将Django的ModelChoiceField更改为显示用户的全名而不是用户名。

17 浏览
0 Comments

将Django的ModelChoiceField更改为显示用户的全名而不是用户名。

我在我的Django应用程序中有一个表单(不在管理员中),允许工作人员从下拉列表中选择一个用户。

forms.ModelChoiceField(queryset = User.objects.filter(is_staff=False), required = False)

问题是下拉列表显示的是用户的用户名,而我更希望它显示他们的全名(通过user.get_full_name()获得),只有在没有全名时才使用用户名。我只需要在这个页面上进行这个更改,其他地方如管理员中,如果使用用户名我并不在意。

有办法可以实现这个吗?

谢谢!

0