韩漫免费漫画在线观看方法,《好好疼爱里面》免费看,年轻漂亮的女士护士内衣,妈妈醉酒后把我当爸爸电视剧

文章 > 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
关注

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

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

老公拿狗给我配| 水手服| 交换的温度2HD| 《俄罗斯空姐2(俄罗斯航空)》| 为什么妓女磨两下就很多水| 欧美精品99久久久啪啪| 二人生猴子全程免费下载| 双人床上做运动后排有伤害吗| 赵局长含着小婷的双乳| 乳头被男人吸过乳头会皲裂吗| 公与媳中文字幕乱码的预防方法| 伦理《少妇的滋味》完整版| 《菊内留香》双男主| 《甜蜜惩罚2》第二季的剧情| 女人尝试到更粗大的心理变化 | 把你CAO烂好不好高H| 儿子娶妈妈免费观看完整版| 老赵玩小静揉捏胸奶头视频播放| 《一滴都不许漏》何泽城林荫 | 瑜伽馆里的私密按摩效果怎么样| CC388A黑色| 男生把小困困放到女生困里视频| 日本女RAPPER| 李丽珍| 《共享弟夫》动漫在线观看免费| 欧美人动物PPT免费模板大全| 雨后的故事动态图| 超级少女| 女性左腿又开腿肚子中间疼视频| 欧美大妈LOGO大全及价格图| 美女和男生一起努力的生孩子视频..| 官场艳妇的呻吟声| 国外黄冈站刺激战场| 《帐篷里的秘密》第一季| 欧美大妈LOGO大全及价格图| 水K制服| 公翁晚上吃我奶头子| 国产精品久久久久久久久精品动漫| 旋转木马电动拼插木质科技| 《办公室高潮秘书2》| 蜜桃臀