繁体   English   中英

Django:迁移子应用 model.py 文件

[英]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 startappmanage.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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM