django项目中分多个models.py创建table

django创建每个app都默认有一个model.py文件。
当app需要大量建立table,且需要分类时,能否建立多个model.py文件?

1、在app文件夹下创建一个models文件夹(myapp/models/)。
2、将app文件夹中models.py文件删除(也可以剪切到models文件夹中)
3、models文件夹下新建__init__.py
4、models文件夹下新建分model文件:如model_001.py,model_002.py
5、在__init__.py中引入所需要的models同类文件
from .models import *
from .model_001 import *
from .model_002 import *

 注意:各model.py文件中类名不能重复

 (若:你的模型不在默认的应用程序包下的models.py文件中,这时候需要指定你这个模型是哪个应用程序的。)

在定义model的类中加一个内部类Meta: 

class User(models.Model):
    title = models.CharField(max_length = 100)
    class Meta:
        app_label = 'myapp'

Meta中app_label 意义

Options.app_label
如果一个model定义在默认的models.py,例如如果你的app的models在myapp.models子模块下,你必须定义app_label让Django知道它属于哪一个app
app_label = 'myapp'

转自:https://www.cnblogs.com/JIM-FAN/articles/14742705.html

posted @   yehaita  阅读(343)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示