3
我想用当前登录的用户更新我的模型。我正在使用django-vanilla-views。要存储新记录,我试图使用CreateView。我不想在窗体上显示用户,只需自动更新。在django vanilla上设置当前用户CreateView
这里是我的模型:
class Measurement(models.Model):
date = models.DateField()
user = models.ForeignKey(User)
这是我的观点:
class CreateMeasurement(CreateView):
model = Measurement
fields = ['date']
success_url = reverse_lazy('list_measurements')
def get_form(self, data=None, files=None, **kwargs):
kwargs['user'] = self.request.user
return super(CreateMeasurement, self).get_form(data=data, files=files, **kwargs)
可惜访问我得到下面的异常视图时:
TypeError: __init__() got an unexpected keyword argument 'user'
我也尝试过为我的模型创建一个ModelForm,但得到完全相同的错误。任何想法我可能做错了什么?
这很好,谢谢! –