如何在 Django 中使用遗留数据库模仿 request.user?
How to imitate request.user with legacy database in Django?
我必须使用 Django 使用密码未加密的遗留数据库创建一个简单的登录功能。所以我正在使用 Table.objects.filter(login=username,password=password).exists()
来确定 table.
中是否存在特定的用户名密码组合
登录后,我想使用 request.user
之类的东西,以便我可以使用它来访问与刚刚登录系统的用户相关的其他信息。
有什么方法可以像 request.user
一样在系统中的不同页面上携带变量吗?
您只需要 custom authentication backend。这样,您就可以使用现有的 table,并享受标准 Django 用户模型的所有好处。
不过,我强烈建议您尝试移动您的用户数据,以使用正确的散列密码。例如,在您的情况下,您可以 运行 数据迁移以将数据复制到新的 table 并在途中散列密码。
我必须使用 Django 使用密码未加密的遗留数据库创建一个简单的登录功能。所以我正在使用 Table.objects.filter(login=username,password=password).exists()
来确定 table.
登录后,我想使用 request.user
之类的东西,以便我可以使用它来访问与刚刚登录系统的用户相关的其他信息。
有什么方法可以像 request.user
一样在系统中的不同页面上携带变量吗?
您只需要 custom authentication backend。这样,您就可以使用现有的 table,并享受标准 Django 用户模型的所有好处。
不过,我强烈建议您尝试移动您的用户数据,以使用正确的散列密码。例如,在您的情况下,您可以 运行 数据迁移以将数据复制到新的 table 并在途中散列密码。