django - Django:用户登录后如何在所有页面上发送用户名
问题描述
这是视图中的登录方法:
def login(request):
if request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
user = auth.authenticate(username=username, password=password)
if user is not None:
auth.login(request, user)
return redirect('forum')
else:
messages.info(request, 'Username or password is wrong!')
return render(request, 'login.html')
return render(request, 'login.html')
以下是我编写代码的方式: 在视图模块中:我已经注册了方法和登录方法,它们都可以正常工作。但是,我还有其他需要登录才能访问它们的方法,因为我一次只重定向一个页面,我无法在需要登录才能访问它们的页面之间获得相同的用户名。现在的问题是,如何通过保留登录名中的相同用户名来创建另一个处理来自论坛的数据的页面。PS:在论坛里,我可以得到用户名但是如何保持相同的用户名,是个问题谢谢:)
解决方案
如果我理解了这个问题,你想user
在登录后使用。
def login(request):
if request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
user = auth.authenticate(username=username, password=password)
if user is not None:
auth.login(request, user)
return redirect('forum')
else:
messages.info(request, 'Username or password is wrong!')
return render(request, 'login.html')
return render(request, 'login.html')
def another_page(request, *args, **kwargs):
user = request.user
...
推荐阅读
- idris - Idris rewrite 没有改变类型
- magento2 - Magento 2 扩展,用于从前端提交表单并将值保存到数据库表
- jquery - 如何在jquery数据表中隐藏第一页上的上一页和最后一页的下一页
- c# - 如何使用 NEST 6.1.0 实现建议完成?
- c - 指向具有不同指针类型参数的函数的函数指针。未定义的行为?
- shell - 使用剪切分隔符提取字符串的初始部分
- arduino - 我有一个带有 Arduino Nano 的 4 位 7 段显示项目,但它不起作用
- javascript - 如果或测试条件作为模块
- javascript - 如何将导航菜单添加到 html5 画布项目
- swift - 检索 WKWebView 当前 URL 可可