Django使用参数/上下文重定向视图

时间:2017-07-03 20:29:57

标签: python django templates views

我在我的django应用程序中注册了视图,重定向到主页:

def register(request):
   ...register...
   return redirect("/")


def homepage(request):
    users = User.objects.all().order_by('username')
    return render(request, 'index.html', {'users': users})

我想添加变量new_user,告诉主页用户是否为新用户。我会将变量从寄存器视图传递到主页视图,而不是传递给我将处理它的模板:

{% if new_user %}
<h1>Welcome</h1>
{% endif %}

但我不知道如何将这个变量从寄存器视图传递到主页而不是模板。 非常感谢帮助!

2 个答案:

答案 0 :(得分:1)

实现这一目标的一种简单方法是在查询中设置参数:

def register(request):
   ...register...
   return redirect('/?new')


def homepage(request):
    is_new_user = 'new' in request.GET
    ....

答案 1 :(得分:0)

试试这个希望这会对你有帮助。

def register(request):
   ...register...
   users = User.objects.all().order_by('username')
   return redirect("/", {'users'=users })


def homepage(request,users):