如何在Django中获取已登录用户的名字和姓氏?

9

我需要在我的视图函数中获取用户的名字和姓氏。我应该如何做?它的语法是什么?我已经使用request.user.email来获取电子邮件,但我没有看到名字或姓氏的选项。我该怎么做呢?

我应该导入模型到视图中然后使用吗?

2个回答

21

有多种方法可以获取您需要的信息。

  • request.user.get_full_name(),返回名字和姓氏,用空格分隔。

  • request.user.get_short_name(),只返回名字。

您也可以直接访问属性:request.user.first_namerequest.user.last_name ,但最好使用方法,因为属性在将来的版本中可能会更改。

Django用户模型具有丰富的方法,您可以在“auth”应用的参考文档中阅读相关内容。


4
你需要的是 request.user.first_namerequest.user.last_name 属性。

你说的“populated”是什么意思? - DeA
我的意思是,如果用户在注册表单中没有填写他们的姓名,或者你用来创建他们的任何其他信息,那么显然这些信息就不会存在。 - rofls
是的,但在这种情况下,那个字段会被留空或为空白或带有一个空字符串吗? - DeA
你是正确的,那应该是这样的。我没有测试过,但我认为那是正确的。修改了答案。 - rofls

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接