2010-09-29 11 views
18

que tienen una clase de modelo de Django con una propiedad no-modelo de campo, por ejemplo:¿Puede acceder a una "propiedad" de Django Model desde su ModelForm?

def _get(self): 
    return "something" 
description = property(_get) 

estoy usando la clase del modelo con un ModelForm/ModelFormset. ¿Hay alguna forma de acceder a la propiedad desde el formulario/formset? De lo contrario, ¿cuál es la mejor práctica para incluir datos adicionales de "visualización" en un formset django?

Respuesta

23

Si su ModelForm se inicia con una instancia de un modelo, entonces se puede acceder a él a través del atributo instance. Desde el ModelForm docs:

También, una instancia de modelo de formulario unido a un objeto de modelo contendrá un atributo self.instance que da acceso métodos de formulario modelo para esa instancia de modelo específico.

+0

Gracias mucho! Perdí esa línea en la documentación. – bsk

+0

De nada; encantado de ayudar. :) – ars

Cuestiones relacionadas