0

我不明白为什么当我使用它的内置查询函数时,Django 可以很好地访问我的表,即。Perk.objects.all(),但是当我尝试使用自定义 sql 时,它说没有这样的表。

def sql(self):
    queryset = Perk.objects.all() # works fine
    cursor = connection.cursor()
    cursor.execute("SELECT * FROM perk")  # Fails. No such table: perk.
    ...
4

1 回答 1

2

表的默认 django 命名约定是“appname_classname”。您可以在此处阅读有关更改默认值的信息:

Django 表命名约定。我可以改变它的行为吗?

或查看文档:

https://docs.djangoproject.com/en/1.9/ref/models/options/

您可能会查看您的数据库以查看该表的实际名称。

于 2016-07-31T20:50:24.300 回答