gpt4 book ai didi

django - 如何在Django ModelForm的下拉列表中指定值的顺序?

转载 作者:行者123 更新时间:2023-12-04 13:29:41 24 4
gpt4 key购买 nike

好,这是问题。

class UserForm(forms.ModelForm):   

class Meta:
model = User
fields = ('team', 'related_projects')

models.py中, User类的定义如下:
class User (models.Model):
team = models.ForeignKey(Team, verbose_name = _('team'))
related_projects = models.ManyToManyField(Project, blank = True)
teamrelated_projects都呈现为下拉框。值是系统中所有现有团队以及系统中所有现有项目。没关系,但是它们仅按主键排序,我希望看到它们按字母顺序排序。我应该在哪里指定下拉列表中值的顺序?

最佳答案

您需要为team字段指定替代,然后您应该能够使用其queryset参数替代订单。在这里,我假设要排序的Team中的属性为name

class UserForm(forms.ModelForm):
team = forms.ModelChoiceField(queryset=Team.objects.order_by('name'))

class Meta:
model = User
fields = ('team', 'related_projects')

您可以在此处阅读有关ModelChoiceField的更多信息: http://docs.djangoproject.com/en/dev/ref/forms/fields/#modelchoicefield

关于django - 如何在Django ModelForm的下拉列表中指定值的顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2997168/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com