如何在Django中将Object作为String?

jef*_*eff 4 python django django-templates

我正在尝试做一件非常简单的事,但我找不到怎么做.

我在我的模型类中定义了这个函数:

def __unicode__(self):
    return "Object name = " + self.name
Run Code Online (Sandbox Code Playgroud)

所以在模板页面或者views.py中,我想得到这个字符串.

在模板中,我尝试了这些并且它们不起作用:

{{my_object}} {{str(my_object)}} {{my_object.self}}

这样做的正确方法是什么?

谢谢 !

Kma*_*hta 6

有两种功能__unicode__,并__str__为Python类.

str功能,甚至在模板中,调用__str__.

class Object(object):
    name = "I'm an object"

    def __str__(self):
        return "Object name = %s" % self.name

    def __unicode__(self):
        return u"Object name = %s" % self.name
Run Code Online (Sandbox Code Playgroud)