我有3个型号如下:
class ColorGroup(models.Model):
name = models.CharField(max_length=255)
class Color(models.Model):
color_group = models.ForeignKey(ColorGroup)
name = models.CharField(max_length=255)
class Item(models.Model):
colors = models.ManyToManyField(Color)
对于我的项目,我需要在管理面板中为我的项目添加/删除颜色。目前我必须将它们一一添加。但在很多情况下,我想一次设置 ColorGroup 中的所有颜色(也可能选择其他颜色)。
例子:我想要我的商品是橙色、黄色和所有蓝色系的颜色(包括蓝绿色、海军蓝等)
有没有办法在 ManyToMany 列表中同时显示颜色和颜色组,如果我选择一个组,它会自动选择该组的所有颜色?
我检查了这个问题但是smart_select似乎不允许颜色和组颜色选择。
编辑:我现在想到的解决方案是在项目中添加一个字段“颜色组”,让用户在另一个列表中选择该组。然后在后端处理逻辑。但我想避免增加数据库的复杂性和冗余性