Class NickName(models.Model):
name = models.CharField()
def __unicode__(self):
return unicode(self.name)
Class Bob(models.Model):
bob_nickname = models.ManyToManyField(NickName)
def __unicode__(self):
return unicode(self.bob_nickname)
数字1。如何让班级Bob的__unicode__
显示实际的FK名称,而不是<django.db.models.fields.related.ManyRelatedFieldsManager Object at 0Xdsfjk>
?
编辑:简单地做self.bob_nickname.all()似乎工作正常。它很漂亮,但它显示信息:[<NickName: Ron>,<NickName: Randy>]
NUMBER2。另外,如何让def __unicode__
无法逃脱\n
?我想创建一个多行unicode字符串
谢谢!
答案 0 :(得分:1)
为什么不使用values_list
将所有相关的nick_names作为列表?
class Bob(models.Model):
bob_nickname = models.ManyToManyField(NickName)
def __unicode__(self):
return u'\n'.join(self.bob_nickname.values_list('name', flat=True))