Tec*_*ard 4 django django-forms
我有一个Django应用程序,其活动和对象具有django.contrib.auth.models中定义的User对象的外键.在这样做时,我获得了username用户的属性,即登录ID.
由于User对象存储全名,如何在表单上创建ChoiceField显示用户的全名,而不是用户名,但在表单发布后仍将其链接回正确的User对象?
lem*_*nad 14
如果您有一个常规的ChoiceField,但是如果您有一个modelChoiceField,则不能完全确定以下内容是否有效:
class UserModelChoiceField(forms.ModelChoiceField):
"""
Extend ModelChoiceField for users so that the choices are
listed as 'first_name last_name (username)' instead of just
'username'.
"""
def label_from_instance(self, obj):
return "%s (%s)" % (obj.get_full_name(), obj.username)
class XYZForm(forms.Form):
...
xyz = UserModelChoiceField(User.objects.all())
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1521 次 |
| 最近记录: |