显示python对象名称

卢卡斯·罗德里格斯(Lucas Rodrigues)

在django管理页面中,所有内容仅显示“ xxx object”,而不是我在模型中编写的名称:

class categoria(models.Model):
    nomeCategoria = models.CharField(max_length=50)
    imagemCategoria = models.CharField(max_length=200)

def __str__(self):
   return self.nomeCategoria

class post(models.Model):
    tituloPost = models.CharField(max_length=200,default='tituloPost')
    textoPost = models.TextField()
    textoTagPost = models.TextField()
    categoria = models.ForeignKey(categoria)
    enviadoNewsletter = models.BooleanField(default=False)

def __str__(self):
   return 'Post: ' + self.tituloPost    

我正在使用python 3.4

我也尝试将这段代码放在admin.py中:

class categoriaAdmin(admin.ModelAdmin):
    list_display = ('nomeCategoria','imagemCategoria')

admin.site.register(categoria, categoriaAdmin)

但这只会在列表中显示正确的名称。我认为str的目的是在任何地方显示正确的字段,否则我错了吗?

我是新来的,对我的英语感到抱歉,希望有人能帮忙。

ESP形态

需要更好地分隔str或更好的unicode,以便类具有方法,而不是模块。此外,您可能应该为模型类使用标题(例如,Categoria类)

class categoria(models.Model):
    nomeCategoria = models.CharField(max_length=50)
    imagemCategoria = models.CharField(max_length=200)

    def __str__(self):
       return self.nomeCategoria

class post(models.Model):
    tituloPost = models.CharField(max_length=200,default='tituloPost')
    textoPost = models.TextField()
    textoTagPost = models.TextField()
    categoria = models.ForeignKey(categoria)
    enviadoNewsletter = models.BooleanField(default=False)

    def __str__(self):
       return 'Post: ' + self.tituloPost    

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章