OwlCoder
Создание модели из формы на основе generic View
В форме используется дополнительный параметр user. То есть во время заполнения формы - он отсутствует. Мы его заполняем перед сохранением модели, если пройдена проверка
from django import forms
from django.views.generic import CreateView
class MyModelForm(forms.ModelForm):
class Meta:
model = MyModel
exclude = ('user',)
class CreateMyModelView(CreateView):
form_class = MyModelForm
template_name = 'main/some-view.html'
success_url = '/'
def form_valid(self, form):
form.instance.user_id = self.kwargs.get('pk')
return super(CreateMyModelView, self).form_valid(form)
def get_form(self, form_class=None):
form = super(CreateMyModelView, self).get_form(form_class=form_class)
return form