[英]Django: migrate subapp model.py file
我的问题如下。 如何迁移models.py文件中不是django-admin startapp appname
自动生成的模型
我制作了一个简单的目录来说明我的问题:
example_app
├── app.py
├── models.py
├── tenants
│ └── tenant1
│ ├── models.py
│ └── tenant1_views.py
├── tests.py
└── views.py
所以我想要的是迁移tenant1.models.py 里面的东西
我还没有找到任何关于如何实现这一目标的线索,有人知道吗?
Django 将查看INSTALLED_APPS
中定义的所有应用程序的模型,应用程序可能不是由django-admin startapp
或manage.py startapp
创建的,但可以添加到INSTALLED_APPS
。 Django 将在您的应用程序中查找AppConfig
的子类,如果找不到,它将使用基本AppConfig
,因此您可能需要将apps.py
文件添加到您的子应用程序并添加AppConfig
以正确配置它:
在tenant1
添加一个apps.py
:
from django.apps import AppConfig
class Tenant1Config(AppConfig):
default_auto_field = 'django.db.models.AutoField'
name = 'tenants.tenant1'
接下来将您的子应用添加到INSTALLED_APPS
:
INSTALLED_APPS = [
...
'tenants.tenant1',
...
]
接下来,您应该将带有__init__.py
文件的migrations
目录添加到您的应用程序中,以便迁移系统可以直接检测到它。 在此之后简单地运行:
python manage.py makemigrations
# Alternatively, the below command will automatically make a migrations directory
python manage.py makemigrations tenant1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.