码迷,mamicode.com
首页 > 其他好文 > 详细

Django学习手册 - ORM 外键

时间:2018-08-24 22:13:41      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:style   创建   har   create   blog   models   foreign   let   nbsp   

Django 外键操作

关键语法: 

  models.ForeignKey("UserGroup",to_field="gid",default=1,on_delete=models.CASCADE)

参数:

  "UserGroup"            #外键另外一张表

  to_field="gid"           #另外一张表的字段

  on_delete=models.CASCADE    #因为不加这个会报错相关(https://www.cnblogs.com/phyger/p/8035253.html)

 

创建数据表格:

from django.db import models

# Create your models here.

class userinfo(models.Model):
    uname = models.CharField(max_length=32,db_column="用户名")
    pwd = models.CharField(max_length=32,db_column="密码")
    email = models.EmailField(null=True,db_column="邮箱")
    usergroup = models.ForeignKey("UserGroup",to_field="gid",default=1,on_delete=models.CASCADE)

class UserGroup(models.Model):
    gid = models.AutoField(primary_key=True)
    gname = models.CharField(max_length=32)
    test = models.CharField(max_length=32,null=True)
    g = models.ForeignKey("Group", to_field="id",null=True,on_delete=models.CASCADE)

class Group(models.Model):
    grouplist = models.CharField(max_length=255)

 

在每个字段中都录入数据:

技术分享图片

usergroup表 外键 g_id

技术分享图片

userinfo表 外键 usergroup_id

技术分享图片

 

跨表查询:原理--(对象(对象(对象)))

obj2 = models.userinfo.objects.filter(uname="root").first()
print(obj2.usergroup.g.grouplist)

 

Django学习手册 - ORM 外键

标签:style   创建   har   create   blog   models   foreign   let   nbsp   

原文地址:https://www.cnblogs.com/Anec/p/9530194.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!