以下是我的模型的(非常)简化版本:
实验室/模型.py
class Lab(Model):
professor = ForeignKey('authors.Author')
作者/模型.py
class Author(Model):
name = CharField(max_length=100)
在Django管理员中,当我添加或更新实验室时,会自动生成并显示包含每个教授的下拉列表。问题是这个列表很长,而且不是按字母顺序排列的。我希望“教授”下拉列表按“姓名”字段的字母顺序排列。
我该怎么做?
Tags:
ModelAdmin specific ordering via formfield_for_foreignkey
注意我最好不要在
model
上设置排序,因为管理页的排序需要与模型分离。此外,对模型激发的所有查询都将使用
order_by
列,在这种情况下,您可能需要将ordering列与其他列一起索引。目前的做法(2019年1月):
在admin.py文件中:
然后注册:
如文件所述: https://docs.djangoproject.com/en/2.1/ref/contrib/admin/#django.contrib.admin.ModelAdmin.ordering
可以为作者模型定义默认顺序:
相关问题 更多 >
编程相关推荐