gpt4 book ai didi

python - raw_id_fields : How to show a name instead of id?

转载 作者:IT老高 更新时间:2023-10-28 20:55:10 29 4
gpt4 key购买 nike

自定义 Django 管理面板,我正在使用 raw_id_fields从具有数千个元素的模型中选择一个 ForeignKey,因为默认的选择框下拉列表不方便使用这么多的元素。

它可以工作,但它显示的 id 可以在这张图片上看到: enter image description here

有没有办法显示名称或其他字段而不是 id?或者,有没有比使用 raw_id_fields 更好的方法来实现这一点?

这是我在 models.py 中的代码:

class Structure(MPTTModel):
name = models.CharField(max_length=200, unique=True, verbose_name = _('name'))
parent = TreeForeignKey('self', null=True, blank=True, related_name='children', verbose_name = _('parent'))

def __unicode__(self):
return u"%s" % (self.name)

admin.py中:

class StructureAdmin(tree_editor.TreeEditor):
search_fields = ('name',)
raw_id_fields = ('parent',)

最佳答案

从 Django 2.0 开始,您可以使用 autocomplete_fields。它将像 ajax select2 一样工作。

admin.py

class StructureAdmin(tree_editor.TreeEditor):
search_fields = ('name',)
autocomplete_fields = ('parent',)

引用:https://docs.djangoproject.com/en/2.1/ref/contrib/admin/#django.contrib.admin.ModelAdmin.autocomplete_fields

关于python - raw_id_fields : How to show a name instead of id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15190228/

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