Django 在视图中添加m2m链接
我有一个模型:Django 在视图中添加m2m链接,django,django-views,Django,Django Views,我有一个模型: class Project(models.Model): name = models.CharField('Name of project', max_length=100, null=False) users = models.ManyToManyField(settings.AUTH_USER_MODEL) 现在我想在CreateView的用户中添加当前用户。像这样: class ProjectCreate(CreateView): model =
class Project(models.Model):
name = models.CharField('Name of project', max_length=100, null=False)
users = models.ManyToManyField(settings.AUTH_USER_MODEL)
现在我想在CreateView的用户中添加当前用户。像这样:
class ProjectCreate(CreateView):
model = Project
fields = ['name']
template_name = 'project_form.html'
success_url = reverse_lazy('project_list')
def form_valid(self, form):
self.model.users = self.request.user
return super(ProjectCreate, self).form_valid(form)
我需要写些什么来代替呢self.model.users=self.request.user
?替换
self.model.users = self.request.user
与
我尝试执行此操作,但出现以下错误:“在使用此多对多关系之前,需要为字段“project”设置一个值。请记住,
project
需要保存以添加用户
对象。我记得。一个问题是:我需要以表单创建项目,或者将用户信息发送到CreateView的下一步?如果您只想添加当前用户,您可以保存表单并添加用户。
form.instance.save()
form.instance.users.add(self.request.user)