Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 有没有办法让syncdb引入非';t在models.py中?_Django_Django Syncdb - Fatal编程技术网

Django 有没有办法让syncdb引入非';t在models.py中?

Django 有没有办法让syncdb引入非';t在models.py中?,django,django-syncdb,Django,Django Syncdb,我有一个文件,里面有深深嵌入在我的应用程序中的模型,而不是models.py文件或models目录 基本上,它是一个指向遗留数据库上的表的文件,这就是为什么我把它放在一个单独的文件中 但是,现在我正在尝试设置一个测试版本,我需要能够通过syncdb创建所有表 我有什么办法可以这样做吗?还是必须使用SQL手动创建表?temp\u app/models.py from my.deep.in.code.modelfile import model1 from my.deep.in.code.model

我有一个文件,里面有深深嵌入在我的应用程序中的模型,而不是models.py文件或models目录

基本上,它是一个指向遗留数据库上的表的文件,这就是为什么我把它放在一个单独的文件中

但是,现在我正在尝试设置一个测试版本,我需要能够通过syncdb创建所有表

我有什么办法可以这样做吗?还是必须使用SQL手动创建表?

temp\u app/models.py

from my.deep.in.code.modelfile import model1
from my.deep.in.code.modelfile import model2
将临时应用程序添加到已安装的应用程序中(确保目录中也有init.py)

运行Syncdb

从已安装的应用程序中删除临时应用程序

临时应用程序/models.py

from my.deep.in.code.modelfile import model1
from my.deep.in.code.modelfile import model2
将临时应用程序添加到已安装的应用程序中(确保目录中也有init.py)

运行Syncdb


从已安装的应用程序中删除临时应用程序

额头拍打时间

好的,这一部分很关键:如果确实从项目中的其他位置导入模型,而不是从normalmodels.py文件中导入模型,请确保添加:

class Meta:
    app_label = 'foo'
否则,syncdb将忽略这些模型


我确实尝试了Ted写的东西,但出于某种原因,直到我添加了
app\u标签
部分,syncdb才能够创建模型。

额头拍击时间

好的,这一部分很关键:如果确实从项目中的其他位置导入模型,而不是从normalmodels.py文件中导入模型,请确保添加:

class Meta:
    app_label = 'foo'
否则,syncdb将忽略这些模型


我确实尝试了一些Ted写的东西,但出于某种原因,直到我添加了
app\u标签
部分,syncdb才能够创建模型。

您可以将模型写入models.py文件,并在设置文件的
INSTALLED\u APPS
参数中包含此文件的目录路径。您可以可以将模型写入models.py文件,并在设置文件的
INSTALLED_APPS
参数中包含此文件的目录路径。