Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django如何显示作者(用户名)而不是ID?_Python_Django - Fatal编程技术网

Python Django如何显示作者(用户名)而不是ID?

Python Django如何显示作者(用户名)而不是ID?,python,django,Python,Django,我在一个名为users的应用程序上有一个自定义用户模型(CustomUsers),然后我有一个名为Bookings的模型,从中我创建了一个名为BookingsForm的ModelForm 在Bookings模型(最终是BookingsForm)中,我有一个名为booking_author的字段,它有一个从CustomUsers模型继承的ForeignKey 现在,我已经能够成功地将booking_author字段调用到我的BookingCreate视图中,并按照我的要求使其不可编辑/只读。现在的

我在一个名为users的应用程序上有一个自定义用户模型(CustomUsers),然后我有一个名为Bookings的模型,从中我创建了一个名为BookingsForm的ModelForm

在Bookings模型(最终是BookingsForm)中,我有一个名为booking_author的字段,它有一个从CustomUsers模型继承的ForeignKey

现在,我已经能够成功地将booking_author字段调用到我的BookingCreate视图中,并按照我的要求使其不可编辑/只读。现在的问题是,该字段显示的是作者的id,而不是作者的姓名。有人能帮我解决这个问题吗

views.py
有多种获取用户名的方法。在这种情况下,要获取用户名,可以使用

request.user.get_full_name()
request.user.get_short_name()
说明:


user是用户对象,因此您可以访问所有用户方法。如果以上不是您想要的,您可以在用户类中创建一个方法,然后在此视图中调用该方法。

非常感谢。我遵循了你的逻辑,结果成功了
bookings\u form=BookingsForm(initial={'booking\u author':request.user.email})
这在我做以下操作时也起作用:
bookings\u form=BookingsForm(initial={'booking\u author':request.user.first\u name+request.user.last\u name})
太好了,我很高兴它能为你工作!只是一个提示,为了让这段代码更加枯燥,您可以使用user方法加入用户名,就像上面所做的那样。同意,正如我们所说,将其添加到我的待办事项列表中。再次感谢:)
request.user.get_full_name()
request.user.get_short_name()