Django框架 app间互借models字段的操作
Django中多个app之间导入对方models数据库表的方法:即关联多个app间数据库操作models.py的方法
1、在当前models.py 文件中,导入要关联的app项目model.py文件
2、按照以往建立ORM数据库表操作的步骤,创建类,创建字段,当需要另一张表内的字段时,通过一对一的操作导入。
举例说明如下:
- app01 项目下的models.py文件: class User(models.Model): """ 用户表 """ username = models.CharField(verbose_name='用户名', max_length=32) password = models.CharField(verbose_name='密码', max_length=64) email = models.EmailField(verbose_name='邮箱') def __str__(self): return self.username - app02项目下的models.py 文件想关联 app01 项目中 的用户表: from django.db import models from app01.models import User as App01User #导入模块下的类名 class UserInfo(models.Model): nickname = models.CharField(max_length=32) user = models.OneToOneField(App01User) #以一对一的方式导入这个类,建立关联,相对应的字段也会在这个表中生成 class Student(models.Model): title = models.CharField(max_length=32)
注意:这种关联表操作,不影响数据库表的创建,生成表的时候,关联的相应字段也会在当前表中创建!