django __unicode__() - 我如何在模板中调用此方法
Posted
技术标签:
【中文标题】django __unicode__() - 我如何在模板中调用此方法【英文标题】:django __unicode__() - how can i call this method in a template 【发布时间】:2010-12-31 03:40:04 【问题描述】:我在我的联系人模型中定义了一个 unicode() 方法。
def __unicode__(self):
return u'%s %s' % (self.first_name, self.last_name)
现在我想在模板中显示 unicode() 方法的返回值。
但我尝试的一切都失败了。
object.unicode
或
object.unicode()
或
object.__unicode__
或
object.str
这让我很困惑,因为我有另一个模型级别的函数,可以毫无问题地从模板中引用。
这很好用:
def get_id(self):
return "%i" % self.id
object.get_id|escape
【问题讨论】:
【参考方案1】: object
将自动为任何对象返回__unicode__
的值。
【讨论】:
太棒了。谢谢。这样可行。但是“(以及更多字符,所以 SO 不会抱怨)”是什么意思 SO 要求答案或评论至少包含 15 个字符。以上是关于django __unicode__() - 我如何在模板中调用此方法的主要内容,如果未能解决你的问题,请参考以下文章
关于django模型里面的__str__和__unicode
如何从 Django 中的 __unicode__() 函数中查询数据差异
django模型中的__str__()方法和__unicode__()方法
十Django3.0学习之django.utils.encoding未发现 python_2_unicode_compatible包