2015-05-16 5 views
0

С уважением,Сохранить в двух или более моделей одновременно с form_valid

мне нужно сохранить и в то же время в двух или более моделей данных, которые я представить в форме, как я могу в силе это с form_valid ? Я пытаюсь это, но без успеха:

class PEPropietarioView(UpdateModelMixin,UpdateView): 
    model = Propietario 
    form_class = FormPropietario 
    success_url = '/' 
    template_name = 'productores/PE/propietario.html' 

    def form_valid(self,form): 
     admin = Administrador() 
     enc = Encargado() 
     admin = form.save() 
     enc = form.save() 
     return super(PEPropietarioView,self).form_valid(form) 

Как я могу добиться сохранения данных, которые я представить в FormPropietario и в то же время в Administrador и Encargado модели?

ответ

1

Добавить метод в форму FormPropietario:

class FormPropietario(forms.Form): 

    ... 

    def save_relateds(self):  
     admin = Administrador.objects.get_or_create(**self.cleaned_data) 
     enc = Encargado.objects.get_or_create(**self.cleaned_data) 
     return True 

А потом называют это:

def form_valid(self, form): 
    form.save_relateds() 
    return super(PEPropietarioView,self).form_valid(form) 
+0

Спасибо за Ваш ответ ... Но он не работает, он создает администратора и Encargado но все поля пустые, только сохраняет Propietario, потому что это в атрибуте model. Любое другое возможное решение? – dfrojas

+0

Я пробовал новый подход, который должен работать! – Charlesthk

+0

Я пробую это прямо сейчас, позвольте мне проверить, согласны ли вы ответить. Спасибо .. – dfrojas

Смежные вопросы