Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django save ManyToManyField模型和ModelMultipleChiceField_Python_Django_Manytomanyfield_Modelmultiplechoicefield - Fatal编程技术网

Python Django save ManyToManyField模型和ModelMultipleChiceField

Python Django save ManyToManyField模型和ModelMultipleChiceField,python,django,manytomanyfield,modelmultiplechoicefield,Python,Django,Manytomanyfield,Modelmultiplechoicefield,所以我知道有一些类似的问题,但没有一个解决方案对我有效。我尝试过save(commit=false)和save_m2m以及其他一些东西,但是我得到了错误 NOT NULL constraint failed: home_services.managers_id 无论如何,这是我的代码: views.py models.py class Services(models.Model): name = models.CharField(max_length=100, default='')

所以我知道有一些类似的问题,但没有一个解决方案对我有效。我尝试过save(commit=false)和save_m2m以及其他一些东西,但是我得到了错误

NOT NULL constraint failed: home_services.managers_id
无论如何,这是我的代码: views.py

models.py

class Services(models.Model):
    name = models.CharField(max_length=100, default='')
    description = models.CharField(max_length=500, default='')
    owner = models.OneToOneField(User, on_delete=models.CASCADE)
    managers = models.ForeignKey(User, related_name="managers", on_delete=models.CASCADE)
    members = models.ManyToManyField(User, related_name="members")

    def __str__(self):
        return str(self.name) + ": id" + str(self.id)
forms.py

class CreateServiceForm(forms.ModelForm):
    owner = forms.ModelChoiceField(queryset=User.objects.all())
    members = forms.ModelMultipleChoiceField(queryset=User.objects.all())

    class Meta:
        model = Services
        fields = [
            'name',
            'description',
            'owner',
            'members',
        ]
我希望用户能够创建一个服务并选择默认django用户模型中的一个或多个成员

我希望用户能够创建一个服务并选择默认django用户模型中的一个或多个成员

您没有提供
管理器
,根据当前配置,这是不允许的

因此,改变:

managers = models.ForeignKey(
    User, 
    related_name="managers", 
    on_delete=models.CASCADE,
)
致:


您可能想了解更多关于和的信息。

非常感谢。然后我做了:form.save(commit=False)form.save()form.save_m2m(),一切正常!
managers = models.ForeignKey(
    User, 
    related_name="managers", 
    on_delete=models.CASCADE,
)
managers = models.ForeignKey(
    User, 
    related_name="managers", 
    on_delete=models.CASCADE,
    blank=True,
    null=True,
)