Python django对象保存在sqlite开发和mysql生产中有所不同
在我看来,我正在保存或更新对象,如下所示:Python django对象保存在sqlite开发和mysql生产中有所不同,python,mysql,django,sqlite,Python,Mysql,Django,Sqlite,在我看来,我正在保存或更新对象,如下所示: Notification.objects.filter(id=self.npk, body=q, viewed=False).update(viewed=True) 它在发展中发挥作用。它将通知转换为查看,但在生产中不会 在开发中我使用了sqlite3,在生产中我使用了mysql 问题出在哪里???我认为mysql造成了问题,因为它将True、False保存为varchar而不是boolean。 在mysql和django模型中,您也可以使用view
Notification.objects.filter(id=self.npk, body=q, viewed=False).update(viewed=True)
它在发展中发挥作用。它将通知转换为查看,但在生产中不会
在开发中我使用了sqlite3,在生产中我使用了mysql
问题出在哪里???我认为mysql造成了问题,因为它将True、False保存为varchar而不是boolean。
在mysql和django模型中,您也可以使用viewsed=0表示False,1表示true,方法是将viewsed设置为int类型。。它什么也没说,只是不更新它..考虑到您指定的三个过滤参数,您确定查询返回任何对象吗?由于模型的
id
字段通常是唯一的值,我认为您不需要其他选择。如果您刚刚尝试了Notification.objects.filter(id=self.npk).update(vieweed=True)
,会发生什么情况?如果更新此部分,我会在某个地方减少通知计数。当我从管理员处检查其未更新时,我的意思是通知未更新为viewsed=Truedo,这会导致像过滤多个字段这样的问题??