请看看代码,如果你无法理解到底是怎么回事,我解释它到底
我有一个名为好的模型
class Good(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
ans = models.CharField(max_length=1024)
和形式
class GoodForm(forms.ModelForm):
def __init__(self, request=None, *args, **kwargs):
super(GoodForm, self).__init__(*args, **kwargs)
self.input_list = request.user.love_set.all()
self.fields['ans'] = forms.MultipleChoiceField(
label="",
choices=[(c.ans, c.ans) for c in self.input_list],
widget=forms.CheckboxSelectMultiple
)
class Meta:
model = Good
fields = ('ans',)
和用于这个视图是
@login_required
def good_form(request):
form = GoodForm(request)
if request.method == 'POST':
form = GoodForm(request, request.POST)
if form.is_valid():
answer = form.save(commit=False) #problem is here
answer.user = request.user
answer.save()
return redirect('app-2:money')
else:
form = GoodForm(request)
return render(request, 'purpose_using_DB/good_at_form.html', {'form': form, 'error': 'Error occured'})
else:
return render(request, 'purpose_using_DB/good_at_form.html', {'form': form})
所以我想在这里做的是: -
我想呈现一个名为形式
GoodForm
这是一个ModelForm
相关模型Good
。该形式呈现在所谓的表中已经提出的备选方案
Love
。查询
Love.objects.filter(user=user)
相当于request.user.love_set.all()
在某种意义上如果不是完全)我希望用户选择了目前已经选择和点击提交。
在成功提交,我想的要保存的数据里面
ans
的Good
,使用映射到用户表ForeignKey
我的问题是:
如何从形式保存数据的数据库? 它保存所选
ChechBoxes
的List
。 例如,如果我选择1,2,3
和使针对用户的查询,它显示我['1','2','3']
我可以预先填充通过使用初始= some_list /查询中使用的内部视图从情形式的数据的形式(或不使用通过请求对象的,并且不使用构造函数)?
任何问题的答案将其解决方案会做。 非常感激。 先感谢您。