데이터베이스 개체를 한 뷰에서 다른 뷰로 전달하려고합니다. 하지만 세션을 사용하여이 작업을 수행하려고하면 "은 JSON 직렬 가능하지 않습니다"오류가 발생합니다.유형 오류 : JSON을 직렬화 할 수 없습니다.
내 Views.py :
def index(request):
listset = TheaterBase.objects.all()
request.session['s_listset'] = listset
def otherview(request):
result = request.session.get('s_listset')
어떻게 전망 사이에서 객체를 데이터베이스를 전달하는 방법?
원하는 이유는 무엇입니까를 사용하여 시도 할 수 있습니다? 왜 다른보기에서 쿼리를 수행 할 수 없습니까? –
모든보기에서 동일한 쿼리를 사용해야합니다. 그래서 서버로드를 줄이기 위해 세션에 저장해야합니다. @DanielRoseman –
아주 좋은 이유는 아닌 것 같습니다. 이렇게하면 새 항목이 추가 될 때 절대로 업데이트되지 않습니다. 쿼리 세트는 모든 단일 사용자에 대해 개별적으로 저장됩니다. 쿼리를 공유해야하는 경우 각 뷰 또는 컨텍스트 프로세서에서 호출하는 공통 함수를 사용하십시오. –