Python Can';我救不了很多人

Python Can';我救不了很多人,python,django,forms,Python,Django,Forms,所以问题是我不能从状态中拯救很多人 这是我的表格: forms.py 我的模特:models.py class Add_good(models.Model): ... permission = models.ManyToManyField(Permission, related_name="+") ... 在我看来,如果请求方法等于“POST”,我会尝试将这些数据保存到我的模型:views.py if request.method == "POST": form

所以问题是我不能从状态中拯救很多人

这是我的表格: forms.py

我的模特:models.py

class Add_good(models.Model):
   ...

    permission = models.ManyToManyField(Permission, related_name="+")

   ...
在我看来,如果请求方法等于“POST”,我会尝试将这些数据保存到我的模型:views.py

if request.method == "POST":
    form = addGoods(request.POST)

    if form.is_valid():

        form = form.cleaned_data
        newGood = Add_good(permission = form['permission'])
我尝试过这样做(见下文),但也有错误: views.py

还有我的追踪 回溯:

Exception Type: TypeError at /goods/add
Exception Value: 'permission' is an invalid keyword argument for this function
因此,正如您所看到的,
权限有问题,我无法保存它

问题在于:
newGood=Add\u good(permission=form['permission'])

权限是多个字段,因此您的表没有直接的
Permission
字段,因此不能接受该参数。您可以创建模型条目,然后添加权限:

newGood = Add_good.objects.create(...)
newGood.permission.add(Permissions.objects.get(...))
此外,您的表单不会像刚才那样使用权限创建模型,因此您需要在视图中进行手动查询,而不是在for循环中进行手动查询。

问题在于:
newGood=Add\u good(permission=form['permission'])

权限是多个字段,因此您的表没有直接的
Permission
字段,因此不能接受该参数。您可以创建模型条目,然后添加权限:

newGood = Add_good.objects.create(...)
newGood.permission.add(Permissions.objects.get(...))

此外,您的表单不会像刚才那样使用权限创建模型,因此您需要在视图中进行手动查询,而不是在for循环中进行手动查询。

@khajvah add tracebackWell,错误与其他问题有关。您没有发布足够的代码来查找它。“许可”从何而来?@khajvah抱歉edited@khajvah添加回溯。嗯,错误是关于不同的问题。您没有发布足够的代码来查找它。“许可”从何而来?@khajvah
newGood = Add_good.objects.create(...)
newGood.permission.add(Permissions.objects.get(...))