国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Django > django中不同app如何共用数据模型

django中不同app如何共用数据模型

Django

头像

silencement

2019-08-17 13:32:197109浏览 · 0收藏 · 0评论

django的每个app目录下,都有自己的models.py文件。

原则上,每个app涉及的数据库,都会定义在这个文件里。

但是,有的数据库,涉及到多个app应用,不是很方便放在一个单独的app里。

这时,我往往会新建一个public app,然后,将这个目录的modles.py里放置这些数据库,

可是,这样又显得太分散了。

所以,有时也会考虑单独新建一个cmdb这样的app,将所有models数据库文件放在这个app下定义。

那这样操作,会带来一个问题,就是默认django源代码时写死了,一个app只能有一个models.py文件。

如果在app下放多个不同的models.py文件(用前缀或后缀区分),

使用python manage.py makemigrations命令时,django不能感知到其它的models.py文件。

而我当然想将不同的应用分不同的models.py文件放了。

那如何扩展呢?

以下是如何实现的:

1,删除cmdb的app目录下默认的models.py文件。

2,在cmdb的app目录下新建一个models文件夹。

3,在models文件夹时,按不同的应用,建立不同的models.py文件(用前缀或后缀区分)。

4,在models文件夹下新建一个__init__.py文件,将所有的此目录下的models.py里的model导入。

5,再次运行python manage.py makemigrations,django就能感知到这些文件了。

6,写admin.py时,导入models文件夹下的内容,即可。

 在此,再总结一下admin.py里的@admin.register装饰,同时应用在多个models上时的写法。

@admin.register(BaseImage, MiddleImage, DeployImage, DeployConfig)
class BaseImage(admin.ModelAdmin):
    pass
class MiddleImage(admin.ModelAdmin):
    pass
class DeployImage(admin.ModelAdmin):
    pass
class DeployConfig(admin.ModelAdmin):
    pass
关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

出差被最讨厌上司夺走的相似电影| 淑芬两腿间又痒又疼的原因| 《无能的丈夫》完整版| 女性扒开大腿内侧小肚子痒 | B站禁止转播404入口| 满18岁免费观看高清电视剧大全| 头像女下半部位视频大全| 《军妓肉体》在线观看| 欧美大片| 成人做爱免费A片视频| 老师掀起裙子让我挺进| 少妇高潮喷水久久久久久久久| 成都私人情侣免费看电视剧的软件 | 老公让我把B扒开他日 | 《破外女》高清完整版| 泰剧《劈开你的腿》免费观看| 女被强伦疯狂做爰XXX| 意大利人妻伦换| 老师含紧一点H边做边走| 国产X9X9X9X9X9X任意...| 《温柔的大姐姐》动漫免费观看| 免费观看已满十八岁的电视剧大全| 老公不在小叔子当老公| 透明女仆服装开裆连体衣| 明星的照片| 麻豆视频| 脱了内裤在阳台趴着被C| 双胞胎母亲三飞| 少妇洗澡被强公日日澡-百度| 母与子免费观看大全电视剧| 男生把女生QQ放在一起的原因| 魅惑摄影| 麻豆精品无码国产在线播| PRONHUB| 无人区免费观看高清电视剧| 电影《老公上班后》免费观看| 《淫毛》在线观看免费| 18岁的少女与狗高清电视剧| 扌桑小孩的辶鬲的历史背景| 男按摩师吸乳房会得乳腺瘟吗 | 精品人妻人人爽久久爽AV敬礼