Python Django Rest框架未正确更新布尔字段
出于某种原因,我在Python Django Rest框架未正确更新布尔字段,python,django,django-rest-framework,Python,Django,Django Rest Framework,出于某种原因,我在存储模型中有一个已停止更新的布尔字段。我有一个前端应用程序(ember.js)和一个Django Rest框架后端 我最初认为问题出在我的ember应用程序中,尽管在请求中它正确地发送了open字段。然后我注意到,在可浏览的DRFAPI中,它也忽略了开放字段,因此在Django方面肯定有问题 # models.py class Store(models.Model): """ Single vendor of coffee. The user will be a
存储
模型中有一个已停止更新的布尔字段。我有一个前端应用程序(ember.js)和一个Django Rest框架后端
我最初认为问题出在我的ember应用程序中,尽管在请求中它正确地发送了open
字段。然后我注意到,在可浏览的DRFAPI中,它也忽略了开放字段,因此在Django方面肯定有问题
# models.py
class Store(models.Model):
"""
Single vendor of coffee. The user will be able to access the store and
manage their drinks and information.
"""
user = models.OneToOneField(User)
name = models.CharField(max_length=30)
open = models.BooleanField(default=False)
confirm_message = models.CharField(max_length=500)
# serializers.py
class StoreSerializer(ModelSerializer):
class Meta:
model = Store
# views.py
class StoreViewSet(ModelViewSet):
queryset = Store.objects.all()
serializer_class = StoreSerializer
一切看起来都很简单,但出于某种原因,布尔域被忽略了。所有其他字段都在正确更新
有什么想法吗?不确定问题的原因,但从DRF 3.1.x升级到3.2.x解决了这个问题。在生成DB查询之前,出现了一些问题,它没有为布尔字段发送正确的值。
open
是python中的函数。函数不能用作变量名。代码运行正常。我可以更新opened=True
。对不起,我应该提到这一点。我也看到了这一点,并尝试更改字段名,但没有更改。其他模型中的其他布尔字段(名为“活动”)正在做与以前一样的事情,但是发生了一些事情,使得布尔字段没有响应。我一切正常。我能够更新存储对象。检查其他问题。