我正在尝试创建一个视图,以便通过 FormView 将数据添加到我的数据库中。但是,我收到此无属性“用户”错误。我在这里找到了如何使用基于函数的视图摆脱它:MyModelForm' 对象没有属性 'user using django,但是我仍然不知道如何使用我的基于类的视图来做同样的事情。
这是我的文件:
视图.py:
class CreateView(FormView):
template_name = 'restaurant/create.html'
form_class = CreateForm
success_url = ''
@method_decorator(login_required)
def form_valid(self, form):
obj = form.save(commit=False)
obj.owner = self.request.user
obj.save()
return super().form_valid(form)
形式.py:
class CreateForm(forms.Form):
name = forms.CharField()
category = forms.CharField()
capacity = forms.IntegerField()
description = forms.CharField(widget=forms.Textarea)
模型.py:
from django.contrib.auth.models import User
class Restaurant(models.Model):
owner = models.ForeignKey(User, on_delete=models.CASCADE)
name = models.CharField(max_length=200)
category = models.CharField(max_length=200)
description = models.TextField()
capacity = models.IntegerField(default=0)
回溯:http : //dpaste.com/2NTFS8H
慕桂英546537
相关分类