2009-12-30 6 views
6

Definí un método unicode() en mi modelo de contacto.django __unicode __() - cómo puedo llamar a este método en una plantilla

def __unicode__(self): 
     return u'%s %s' % (self.first_name, self.last_name) 

Ahora quiero mostrar el valor de retorno del método Unicode() en una plantilla.

Pero todo lo que intento falla.

{{ object.unicode }} 

o

{{ object.unicode() }} 

o

{{ object.__unicode__ }} 

o

{{ object.str }} 

Eso me confunde ya que tengo otra función de nivel de modelo que puede ser referenciado a partir de la plantilla sin problemas.

Esto funciona bien:

def get_id(self): 
     return "%i" % self.id 

{{ object.get_id|escape }} 

Respuesta

13
{{ object }} 

volverá automáticamente el valor de __unicode__ para cualquier objeto.

+0

Genial. Gracias. Eso funciona. Pero ¿qué quiere decir con "(y algunos caracteres más para que SO no se queje)" –

+0

SO requiere un mínimo de 15 caracteres en una respuesta o comentario. –

+0

ah bien: D lo tengo –

Cuestiones relacionadas