[英]How to save custom User model in Django during user's navigation
大家好,我在Django 2.0中有一个自定义用户模型,其中包含各种用户数据。
class User(models.Model):
username = = models.CharField(max_length=30)
_isLogged = False
# ... other custom data
一旦在登录页面上登录了用户( _isLogged = True
)〜,我如何保存该对象,以便可以在另一个页面(例如home)中验证该用户是否已经登录?
注意,我尝试将所有对象存储在会话变量中,但是它不可序列化。
非常感谢。
您可以通过调用is_authenticated
函数来检查用户是否已登录:
if request.user.is_authenticated():
# something
在类似的文章中已经对此进行了很好的描述: 如何检查用户是否已登录(如何正确使用user.is_authenticated)?
如果1)您使用的是默认Django用户,2)扩展了默认的User模型,或3)您正确配置了自己的模型,则不需要任何特殊字段(例如_isLogged
)。
有关详细信息,请参阅文档 。
在下面的文章中对此进行了很好的描述。 简而言之:
您声明您的User模型子类化AbstractUser
类:
from django.contrib.auth.models import AbstractUser class User(AbstractUser): pass
您可以通过在Django设置中设置以下值来覆盖默认的用户模型:
AUTH_USER_MODEL = 'myapp.MyUser'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.