我目前正在实现Django的Auth用户。我现在正在尝试使用用户的pk作为外键创建具有两个简单字段的表单。对于模型,我对ForeignKey使用以下代码:
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
然后我有一个表单类(forms.ModelForm)
,在其中设置字段。我没有列出上述模型中的用户字段,因为我希望在用户提交表单时自动完成。
最后,我有一个使用以下post方法的视图:
def post(self, request):
form = self.form_class(request.POST)
if form.is_valid():
sub = form.save(commit=False)
sub.save()
return render(request, self.template_name, {'form': form})
任何输入都将不胜感激!
答案 0 :(得分:0)
def post(self, request):
form = self.form_class(request.POST)
if form.is_valid():
sub = form.save(commit=False)
sub.user = request.user
sub.save()
return render(request, self.template_name, {'form': form})
并确保只有经过身份验证的用户才能询问此视图