我一直在阅读django会话框架,并没有真正得到它。 我正在创建一个对象,我想知道如何在视图中使用django会话。 这是如何创建一个对象。
def show_checkout(request):
if order.is_empty(request):
cart_url = urlresolvers.reverse('order_index')
return HttpResponseRedirect(cart_url)
if request.method == 'POST':
postdata = request.POST.copy()
form = forms.CheckoutForm(request.POST,postdata)
if form.is_valid():
anon_user = User.objects.get(id=settings.ANONYMOUS_USER_ID)
obj = form.save(commit=False)
obj.created_by = anon_user
obj.modified_by = anon_user
obj.save()
if postdata['submit'] == 'place order':
reciept_url = urlresolvers.reverse('checkout_reciept')
return HttpResponseRedirect(reciept_url)
else:
form = forms.CheckoutForm
context = {
'form':form,
}
return render_to_response('checkout/checkout.html',context,context_instance=RequestContext(request))
感谢任何帮助。 初学程序员。
答案 0 :(得分:2)
要在会话中保存值,请按键分配:
request.session[key] = value
要从会话中检索值,请按键读取:
foo = request.session[key]
答案 1 :(得分:1)
如果我已经正确理解了您的要求,您可能只需要在obj.save()
之后执行此操作:
request.session['obj_id'] = obj.id
在下一个视图中,您可以再次访问该密钥以获取对象ID,然后从db中检索该对象。