我具有以下函数视图,并且我想添加一个参数,如果request.session.get('order_reference')
为空,该参数会将用户重定向到另一个页面。与@login_required
相似的人可以帮助我吗?
def checkout_page(request):
session_order_reference = request.session.get('order_reference')
答案 0 :(得分:1)
尝试以下操作:
def custom_decorator(function):
def _function(request,*args, **kwargs):
if request.session.get('order_reference') is None:
# if empty means, empty string
# if request.session.get('order_reference') is not None\
# and not request.session.get('order_reference'):
return HttpResponseRedirect('/your/url/')
return function(request, *args, **kwargs)
return _function
设置自定义装饰器后,用它装饰视图。
@custom_decorator
def checkout_page(request):
return render(request,'template_name.html')