Django添加多个下拉列表并在管理面板中选择值

时间:2019-02-13 09:23:39

标签: django

在扩展的用户模型中,我试图在管理面板中添加类似功能的下拉列表,并且我了解如果我创建ForeignKey关系,那么在管理面板中可以看到该下拉列表。但是现在我想要多个下拉菜单,就像单击一样,我们可以选择多个值。

我尝试创建ManyToMany字段,但是该小部件强制您选择,但我对选择功能类型感兴趣。

我的UserProfile为:

class UserProfile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    company_year = models.ManyToManyField(CompanyYear)
    company_name = models.ManyToManyField(CompanyName)

CompanyName仅具有1个CharType字段,而CompanyYear具有1个IntegerType字段。在管理面板中,我尝试这样做:

class UserProfileInline(admin.TabularInline):
    model = UserProfile


class UserAdmin(DjangoUserAdmin):
    inlines = [UserProfileInline]


admin.site.unregister(User)
admin.site.register(User, UserAdmin)

所以现在一切都很好,但是我只想拥有这个下拉菜单,但是我不确定如何做

1 个答案:

答案 0 :(得分:0)

您需要在字段上设置blank=True

company_name = models.ManyToManyField(CompanyName, blank=True)

请注意,它不是下拉窗口小部件,而是多选窗口小部件。