データベースオブジェクトをあるビューから別のビューに渡そうとしています。しかし、セッションを使用してこれを達成しようとすると、この "は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 –
それは非常に良い理由ではないようです。これを行うと、新しい項目が追加されたときに更新されません。クエリーセットは1人のユーザーごとに個別に保存されます。クエリを共有する必要がある場合は、各ビューまたはコンテキストプロセッサから呼び出される共通の関数を使用します。 –