gpt4 book ai didi

python - 在 Django Admin 中订购多对多字段

转载 作者:太空狗 更新时间:2023-10-29 21:07:49 27 4
gpt4 key购买 nike

这是我的设置:

from django.contrib.auth.models import User

class Product(models.Model):
...
email_users = models.ManyToManyField(User, null=True, blank=True)
...

[别处]

class ProductAdmin(admin.ModelAdmin):
list_display = ('name','platform')

admin.site.register(Product, ProductAdmin)

我的主要问题是,当我在管理部分查看“产品”页面时,默认情况下电子邮件用户不会按他们的 ID 排序,我希望按他们的用户名排序。

从我目前读到的内容来看,我似乎需要补充:

   email_users.admin_order_field = 'xxxx'

但我不太确定访问用户名的语法是什么。

最佳答案

上面郝连的评论中提到了这个答案,本质上,这是需要做的:

class ProductAdminForm(ModelForm):
email_users = forms.ModelMultipleChoiceField(queryset=User.objects.order_by('username'))

class Meta:
model = Product

class ProductAdmin(admin.ModelAdmin):
list_display = ('name','platform')
form = ProductAdminForm

admin.site.register(Product, ProductAdmin)

我的略有不同,因为我需要 forms.ModelMultipleChoiceField,而提供的答案使用 forms.ModelChoiceField()

关于python - 在 Django Admin 中订购多对多字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3630163/

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