使用会话时,使用基数为10的int()的文字无效

时间:2017-02-20 14:29:42

标签: python django session django-views

我正在尝试将数据从一个视图发送到另一个视图。我希望在整个应用程序中访问该电子邮件,因此,我正在设置电子邮件到会话。 现在,我想让对象传递电子邮件为pk。

查看我设置会话的位置

def login(request):
    if request.method == 'POST':
        user = get_object_or_404(UserDetails, pk=request.POST['email'])
        if(user.password==request.POST['password']):
            request.session['email']=user.email
            return redirect('/users/dashboard/')
        else:
            return render(request, 'accounts/login.html')
    else:
        return render(request, 'accounts/login.html')

查看我想要访问会话值的位置并使用它来获取对象

def profile(request):
    if(request.session['email'] is not None):
        user = get_object_or_404(UserDetails, pk=request.session['email'])
        userprofile = get_object_or_404(UserProfile, pk=request.session['email'])
        return render(request, 'users/profile.html', {'user':user, 'profile':userprofile})

模型

class UserDetails(models.Model):
    email = models.EmailField(max_length=200, primary_key=True, blank=False)
    name = models.CharField(max_length=200, blank=False)
    password = models.CharField(max_length=100)
    city = models.CharField(max_length=200)
    mobile_num = models.IntegerField()

我收到int()的无效文字,我的电子邮件值有10个基数错误。这可能是一个问题很多次,但是,我没有找到任何解决方案。任何帮助将不胜感激。谢谢!

0 个答案:

没有答案