相关疑难解决方法(0)

在Django Admin中过滤ManyToMany框

我有一个与另一个对象有多对多关系的对象.
在Django Admin中,这会在多个选择框中生成一个很长的列表.

我想过滤ManyToMany关系,因此我只获取客户选择的City中可用的类别.

这可能吗?我是否必须为它创建一个小部件?如果是这样 - 我如何将行为从标准的ManyToMany字段复制到它,因为我也想要filter_horizo​​ntal函数.

这些是我的简化模型:

class City(models.Model):
    name = models.CharField(max_length=200)


class Category(models.Model):
    name = models.CharField(max_length=200)
    available_in = models.ManyToManyField(City)


class Customer(models.Model):
    name = models.CharField(max_length=200)
    city = models.ForeignKey(City)
    categories = models.ManyToManyField(Category)
Run Code Online (Sandbox Code Playgroud)

django many-to-many django-forms django-admin django-widget

34
推荐指数
3
解决办法
3万
查看次数