我想使用 inspectdb以便为新引入的表构建相应的模型。但是看起来这个命令只查找 public
模式,而新表在另一个模式中。
是否可以为 inspectdb
指定模式?
最佳答案
是的,您必须通过在 settings.py 的 DATABASES 变量中添加一个选项来指定搜索路径,如下所示:
'OPTIONS': {
'options': '-c search_path=myschema'
}
完整的 DATABASES 变量应该是:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'mydatabase',
'USER': 'postgres',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
'PORT': '5432',
'OPTIONS': {
'options': '-c search_path=myschema'
}
}
}
在那之后 python manage.py inspectdb
应该可以在你的模式上工作
关于django - 在特定模式上运行 inspectdb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21986917/