【问题标题】:Change empty_label for Django forms更改 Django 表单的 empty_label
【发布时间】:2011-12-14 18:29:28
【问题描述】:

我在更改表单的空标签时遇到了一些问题。我已经阅读了文档https://docs.djangoproject.com/en/dev/ref/forms/fields/#django.forms.ModelChoiceField 和stackoverflow 上的一些页面,但我仍然不明白。在我的模型中,我有一个县元组

county_choices = (('county1', _('county1')),('county2', _('county2')),('county3', _('county3')))
和模型
county = models.CharField(max_length=30, blank=True, default='n/a',choices=county_choices,verbose_name=_('county'), help_text=_(' County'))
我希望能够用我自己选择的字符串覆盖 9 '-' 空标签并能够翻译它。因此,我从模型中导入了所有内容并尝试了表单
county = forms.ModelChoiceField(queryset=Users.objects.all(),empty_label=_("my_own_choice"))
并且它不起作用。我在我的 html 中将 {{ form.county }} 变量发送给它,但是在我自己的选择之后,我得到了一个奇怪的字符串 'sdadsada dsadadas' 而不是我的县列表。你能帮我解决这个问题吗?我是否需要将带有县的元组放在查询集中?如果我根本不想向它发送查询集怎么办?

【问题讨论】:

    标签: python django django-models django-forms


    【解决方案1】:

    为县和同步数据库创建一个模型。通过这种方式,您可以使用查询集来操作和访问它们,就像使用用户一样。即 queryset=Counties.objects.all()。

    查看ModelChoiceField documentation 以获得更多帮助。

    【讨论】:

    • 是正确的,但是 id 并没有多大帮助。我想发送带有县的元组。以及如何从模型中提取该元组作为查询集???顺便说一句,爱马拉加:D
    • 它不起作用,它说元组对象不可调用。如何将其转换为查询集?
    • 更好:为县和同步数据库创建模型。通过这种方式,您可以使用查询集来操作和访问它们,就像使用用户一样。即 queryset=Counties.objects.all()
    • 我已经做到了,我们取得了一些进展:它用空标签填充,但没有用选择填充元组:(
    • 我已经改了答案,请再看一遍。您在为县创建的表中有值吗?
    猜你喜欢
    • 2012-10-10
    • 2011-03-20
    • 2014-07-19
    • 2017-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-29
    相关资源
    最近更新 更多