次のようなビューがあります。
def CineByCiudad(request):
city = request.session["ciudad"]
cines = Cine.objects.filter(ciudad=city)
context = {'cines': cines}
return render_to_response('cine-ciudad.html', context, context_instance=RequestContext(request))
現在、セッション変数「ciudad」を使用してクエリをフィルタリングしています。私のサイトのホームページで、ユーザーに「ciudad」を設定させ、設定したら別のページにリダイレクトすると、都市(「ciudad」)に基づいてコンテンツの表示を開始できます。
私のホームページは、セッションにアイテムがあるかどうかをチェックします:
def index(request):
#Checks to see if the session has items, in particular if a city has been set
if not request.session.items():
return render_to_response('index.html', context_instance=RequestContext(request))
else:
return redirect(Cartelera)
ここで、何らかの理由でユーザーが Cookie を削除し、サイトでホームページとは異なる URL (www.site.com/cartelera など) にアクセスすると、セッション変数「ciudad」が設定されていないため、エラーが発生するとします。 .
設定されていない場合に、このセッション変数のデフォルト値を作成する方法はありますか? または、この問題に対処するための良い習慣は何ですか?