如何更改Django的默认Postgres数据库搜索目录

时间:2016-04-12 23:41:52

标签: python django postgresql

我正在创建一个Django Web应用程序,我正在使用Postgres作为我的数据库。

在我的项目中,我有一个名为'home'的Web应用程序,我在Postgres中创建了一个名为'myTable'的表。

每当我尝试在表格中保存某些内容时,Django会自动查找名为“home_myTable”而非“myTable”的表格。例如,如果我这样做

python manage.py migrate

我收到以下错误:

django.db.utils.ProgrammingError: relation "home_myTable" does not exist

我一直在使用Psycopg2手动发出Postgres命令,但这真的很烦人。

有没有办法阻止Django自动开始寻找'home_myTable'而是让它搜索我想要的表?

1 个答案:

答案 0 :(得分:1)

您可以为模型设置db_table Meta选项。

class MyTable(models.Model):
    ...

    class Meta:
        db_table = 'mytable'

除非您正在处理遗留数据库,否则我建议您定义模型,创建迁移,然后让Django创建表,而不是像您一样手动创建表。