我是一个noobdjango用户,我在Model.objects.all方法。 我有一个用户模型: (我知道明文保存密码是不好的做法,但这只是一个有趣的例子)
class UsersModel(models.Model):
password = models.CharField(max_length=MAX_PASSWORD_LENGTH)
user = models.CharField(max_length=MAX_USERNAME_LENGTH, primary_key=True)
count = models.IntegerField()
我有一个测试方法可以删除用户表中的所有条目:
^{pr2}$因为某种原因,打电话用户模型.objects.all()引发错误
DatabaseError: column "cs169proj1_usersmodel.user" must appear in the GROUP BY clause or
be used in an aggregate function
LINE 1: SELECT "cs169proj1_usersmodel"."user", "cs169proj1_usersmode...
从google上,我发现SQL中的这个特殊错误只有在Postgresql(我正在使用的)上才会出现。有人知道怎么解决这个问题吗?在
我在用postgresql从django1.6升级到1.9.8时遇到了类似的问题。在
在我的例子中,这个问题是由于django1.9中的更改导致的,至少需要postgresql9.1,如here所述。在
redhat/centoshere的postgresql更新指令。在
听起来列名
count
被误解为aggregate function。在最佳解决方案:永远不要使用reserved words作为标识符。在
相关问题 更多 >
编程相关推荐