简体   繁体   English

如何在函数 Django 之间传递变量?

[英]how to pass variables between functions Django?

I have a function like this in views.py:我在views.py中有这样的功能:

def signin(request):
    if request.method == 'POST':
        uname = request.POST['username']
        pwd = request.POST['password'] 
        #and other code

And then i have another function like this:然后我有另一个这样的功能:

def reservations(request):
    try:
        c = Utilisateur.objects.get(username = uname)
        reserve = Reserve.objects.get(client = c)
        return render (request, 'reservation.html', {'reserve':reserve})
    except:
        return HttpResponse ('you have no reservations!')

And i want to use the "uname" variable of the first function but it doesn't work any solution?我想使用第一个函数的“uname”变量,但它没有任何解决方案?

In the first view, save the value in the session:在第一个视图中,保存会话中的值:

def signin(request):
    if request.method == 'POST':
        uname = request.POST['username']
        request.session['uname'] = uname

Then in the second view, fetch the value from the session:然后在第二个视图中,从会话中获取值:

def reservations(request):
    try:
        uname = request.session['uname']
        c = Utilisateur.objects.get(username = uname)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM