我有以下几种型号:
class ModelA(models.Model):
some_field_A = models.CharField()
some_other_field_A = models.CharField()
class ModelB(models.Model):
some_field_B = models.CharField()
many_to_many_relation = models.ManyToManyField(ModelA)在admin.py中,我使用filter_horizontal编辑ManyToManyField:
class ModelB(admin.ModelAdmin):
model = ModelB
filter_horizontal = ('many_to_many_relation',)但是它只显示了some_field_A,我希望它能够显示来自ModelA的两个字段,因为ModelA中的条目是唯一的,这取决于两个字段,正如您从图片中可以看到的,有多个条目具有相同的值(即some_field_A = EUV),但是它们对于some_other_field_A有不同的值。

发布于 2021-01-05 14:19:52
我不确定这是否正是您要寻找的解决方案,但是您可以重写ModelA的ModelA方法,以便在一行中返回信息。
例如:
class ModelA(models.Model):
first_field = models.CharField(max_length=16)
second_field = models.CharField(max_length=16)
def __str__(self):
return f"{self.first_field} ({self.second_field'})"然后,管理视图应该将每个对象显示为"foo (bar)“。
https://stackoverflow.com/questions/65580583
复制相似问题