如何在django中注销时获取用户
Posted
技术标签:
【中文标题】如何在django中注销时获取用户【英文标题】:How to get the user while Logout In django 【发布时间】:2020-09-01 11:12:40 【问题描述】:我正在尝试让用户从 django 注销并将其作为参数传递给外部 python 脚本。 这是我的注销视图:
def logoutUser(request):
user = request.user
exec = run([sys.executable,'scriptlogout.py', user], shell=False, stdout=PIPE)
logout(request)
return redirect('beesy:Login')
但这不起作用,我无法检索点击注销的用户
谢谢你帮助我
【问题讨论】:
user
是 not 一个字符串,它是一个User
对象(严格来说是一个惰性对象),所以你不能在@ 中使用user
987654325@ 部分。
感谢您的回复您对我想做的事情有什么建议吗?
如果你使用exec = run([sys.executable,'scriptlogout.py', user.username], shell=False, stdout=PIPE)
会怎样
【参考方案1】:
谢谢大家,我用过 str() 并且效果很好:
def logoutUser(request):
user = str(request.user)
exec = run([sys.executable,'scriptlogout.py', user], shell=False, stdout=PIPE)
logout(request)
return redirect('beesy:Login')
【讨论】:
以上是关于如何在django中注销时获取用户的主要内容,如果未能解决你的问题,请参考以下文章
注销后如何保存购物车数据的会话,以便用户在 Django 中再次登录时可以找到它们?
当他从所有浏览器(Django-rest-auth,JWT)更改密码时如何注销用户?
在django中,request.session.set_expiry是如何使用idle后注销用户的?