出于某种原因,我在Store
模型中有一个已停止更新的布尔字段。我有一个前端应用程序(ember.js)和一个Django Rest Framework后端。
我首先想到问题出现在我的ember应用程序中,即使在请求中它正确地发送了open
字段。然后我注意到在可浏览的DRF API中它也忽略了open字段,所以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
所有东西看起来都很棒,但由于某些原因,BooleanField被忽略了。所有其他字段都正确更新。
任何想法可能是什么?
答案 0 :(得分:0)
不确定问题的原因是什么,但从DRF 3.1.x升级到3.2.x解决了这个问题。在生成数据库查询之前,某些内容已被破坏,并且没有为布尔字段发送正确的值。