widgets formularios form fields example avanzados django django-forms

formularios - Django: ¿Cómo anular form.save()?



modelform django (1)

Mi modelo tiene bastantes campos booleanos. He dividido estos en 3 conjuntos que estoy representando como MultipleChoiceField con un CheckboxSelectMultiple modificado.

Ahora necesito guardar esta información en el DB. es decir, necesito dividir los datos devueltos por un solo widget en múltiples columnas booleanas. Creo que esto es apropiado para el método save() , ¿no?

La pregunta es, ¿cómo lo hago? ¿Algo como esto?

def save(self, commit=True): # code here return super(MyForm, self).save(commit)

Si es así ... ¿cómo configuro los valores?

self.fields[''my_field''].value = ''my_flag'' in self.cleaned_data[''multi_choice'']

¿O algo? ¿Dónde están almacenados todos los datos?


El lugar donde desea que se almacenen sus datos es su nueva instancia de modelo:

def save(self, commit=True): instance = super(MyForm, self).save(commit=False) instance.flag1 = ''flag1'' in self.cleaned_data[''multi_choice''] # etc if commit: instance.save() return instance