我正在使用django 1.8。我试图在django中使用CreateView将值插入数据库。我可以将数据插入数据库。问题是插入一个字段的值(多对多)。该字段是插入另一个表。我将在下面简要解释
models.py
class Model1(models.Model):
name = models.CharField()
address = models.CharField()
first_name = models.ManytoManyField(Model2)
class Model2(models.Model):
first_name = models.CharField()
forms.py
class sampleForm(forms.ModelForm):
name = forms.TextInput()
address = forms.TextInput()
first_name = forms.TextInput()
views.py
class Create(CreateView):
model = Model1
form = sampleForm
def form_valid(form):
form.save()
return super(Create,self).form_valid(form)
当我尝试将值插入数据库时,名称和地址会成功插入到一个表中。 first_name字段需要插入另一个表。但它没有插入。任何人都可以帮我这样做。
答案 0 :(得分:0)
在您的视图文件中,您可以通过此代码进行此操作
class Create(CreateView):
model = Model1
form = sampleForm
def form_valid(form):
form.save(commit=false)
form.save()
form.save_m2m()
return super(Create,self).form_valid(form)