如何在一行中显示多个字段?(Django行政)

2024-05-21 19:21:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在与Django/Mysql中的一种情况作斗争

在同时具有主键和外键的表中有此列。此列与中间表具有一对多关系

这是一份与植物物种有关的州的名单。有些物种可以在多个州找到

  • 物种(表1)列:物种id物种名称
  • 物种到州(表2)列:物种id |州id
  • 州(表3)列:州id、州名称

Models.py(下面的代码)

class Listaflor(models.Model):
    especie = models.OneToOneField(Flora2Estado, models.DO_NOTHING, primary_key=True)
class Flora2Estado(models.Model):
    estado = models.OneToOneField(Estados, models.DO_NOTHING, primary_key=True)
    especie = models.ForeignKey('Listaflor', models.DO_NOTHING)
class Estados(models.Model):
    estado_id = models.AutoField(primary_key=True)
    estado_nome = models.CharField(max_length=100, blank=True, null=True)
    nome_abbr = models.CharField(max_length=2, blank=True, null=True)
    criadoem = models.DateTimeField(db_column='criadoEm')  # Field name made lowercase.

    class Meta:
        managed = False
        db_table = 'estados'
        verbose_name = "Estados"
        verbose_name_plural = "Estado"
    def str(self):
        return self.estado_nome+ " (" + self.nome_abbr+")"

关键是django admin中只显示一个对象(查看下图)。因此,我想在一行中显示多个字段。

enter image description here

有人能帮我吗

多谢各位

class floAdmin(admin.ModelAdmin):

    list_display = ('especie','familia','regiaopred','emailautor','aprovado','datacriado','especie_0')
    fieldsets = (
        ('Editar:', {
            'fields': (

                'especie','familia','regiaopred','emailautor','aprovado','datacriado','especie_0'
                #'pes_vinculo_tipo'
                )
            }),
        )

就像下图一样,我想显示“迈阿密、纽约和缅因”,例如,在django admin中只显示一行。可能吗

enter image description here


Tags: keynameidtruemodel物种modelsdo
1条回答
网友
1楼 · 发布于 2024-05-21 19:21:19

我不明白您希望在手机中获得什么信息,但我想建议您使用下一种方法:

class floAdmin(admin.ModelAdmin):

    list_display = ('especie', 'familia', 'regiaopred', 'emailautor', 'aprovado', 'datacriado', 'especie_0', 'custom_field', )
    fieldsets = (
        ('Editar:', {
            'fields': ('especie', 'familia', 'regiaopred', 'emailautor', 'aprovado', 'datacriado', 'especie_0', 'custom_field', )
            }),
        )

    def custom_field(self, obj):
        data_list_to_show = []  # get data based on obj
        return data_list_to_show 

相关问题 更多 >