背景
解决方法
通用外键
1 | from django.db import models |
指定外键1
2
3
4
5
6
7
8
9
10
11
12
13
14
15from django.db import models
class User(models.Model):
user_name = models.CharField(max_length=32)
group = models.ForeignKey(
'Group',
to_field='group_id', # 关联model的字段
db_column='group_num', # 自身表对应字段
verbose_name='用户组',
on_delete=models.CASCADE)
class Group(models.Model):
group_id = models.CharField(max_length=32)
group_name = models.CharField(max_length=32)
运用场景
通用外键
- 数据库表的创建使用django通用的 %s_id 作为外键 如:group_id
- 未创建数据库,使用django统一创建
指定外键
- 数据库表的创建使用非django 通用的字段作为外键 如:group_num
- 已创建数据库,指定关联字段