El jue, 12-11-2009 a las 16:37 +0100, Ramiro Magallanes escribió:

> Si dentro de una clase "N" llamas a otra clase en formato inline , el
> metodo save_model solo contempla los cambios (ya sean previos y a
> posteriori) que ser realizan sobre el formulario que pertenece a la
> clase N , pero no a los del modelo de datos que corresponde a la clase
> inline que van metidos dentro del formulario principal...

Pues mirando dentro del trunk del cvs , via grep  , puedo ver que ..

    def save_formset(self, request, form, formset, change):
        """
        Given an inline formset save it to the database.
        """
        formset.save()

Asi que no he tenido mejor idea que probarlo , y es verdad , mis
sospechas (despues de intentar de forzar de todas maneras el guardado de
los datos de un inline al momento de darle al boton save del formulario
de la clase N) se han hecho realidad.

El metodo save_model , no contempla el salvado de los datos de todo el
formulario como visualmente se contemplaria, sino solamente el del
modelo padre (que el modelo padre , claro esta , excluye la clase
inline)

El metodo save_formset es quien se encarga de salvar los datos de la
clase que esta como inline y a traves de el si que puedes ejecutar
procesos pre-post carga... (aunque le falta poder usar obj's pero eso es
otra historia ...) que puedan tener acceso a los datos de la clase
inline (porque claro esta , ya han sido salvados , en save_model no han
sido salvados todavia...)

Expediente "X" cerrado , espero que alguien le sirva y no tenga que
tirarse 4 dias como me los he tirado yo :)

Slds!

--
_______________________________________________
Comandob mailing list
Comandob@badopi.org
http://lists.badopi.org/mailman/listinfo/comandob

Responder a