指南:本文的首席执行官注释将介绍Django如何获得相关字段的相关内容。我希望这对每个人都会有所帮助。让我们来看看。
它是外国人,您可以参考:Django最完整的查询案例可以使用
该模型的相应关系主要分为以下:一个-to -One,一个-to -Many等。
几种常见的数据关系,Django提供了良好的支持
注意:如果您通过扩展表获得学生的信息,则语法如下;
学生扩展表的单个对象。相关字段,您可以从学生表中获取数据
注意:如果您通过学生获取关联表的数据,语法如下:
学生对象。关联的表名称可以获取关联表的数据
添加参数相关_name='xxx'
注意:如果您通过学生获取关联表的数据,语法如下:
学生对象。相关字段中定义的相关信息参数可以获取关联表的数据
修改ON_DELETE参数
Models.OnetoOneField('Student',on_delete = models.set_null,null = true)
删除学生对象时,stuinfo的关联字段将设置为空null = true。
定义班级和学生类别以实现一项 - 到许多关系:
注意:使用Models.Foreignkey获取对象元素等级。STUDENT_SET_SET
语法:通过一次收购获取更多数据
公式:一个对象。
然后获取data all(),get(),filter(),等。
让我们通过学生获取课堂信息如下:
以下是通过课程的学生信息:
关键点:
定义相关信息字段后,您只能通过相关_NAME逆转数据,并且您无法再通过_SET方法获得数据
获取Python课程中所有学生的信息
让女学生在Python课程中获得80分
- 在python的中文分数超过数学得分的男性学生中,2.8让一名男学生在Python的Python分数中得分超过10分
让一个男学生出生在-80年代,检查他们的课程
定义购物车,获得了多少对用户:
1.创建一个用户模型:
2.创建产品模型:
让第一个购买这些产品的用户
获取指定产品的购买用户信息
关联数据库不能依靠关系来进行关联的查询。如何在不建立关系的情况下进行连接?
推荐Django学习网站Django高级教程
第一个构建学生,分区,课程,stu_info表
添加一对多表的关系数据:
1.第一种方法是将其添加为上一个方法。应该注意的是,外键的值必须是关联表中存在的存在。
2.第二种方法是属性分配的方法,因为我们具有模型类中部门的属性,并且该属性的对象的类型必须是部门表类型的实例对象
访谈与对象相关的对象:
我们具有定义学生类别类别的部门的属性,因此,当我们访问它时,我们可以直接找到可以通过Student.Deppartment的形式直接找到学生附属学院的大学。
那么,如果您拜访访问一所大学的学生时我们也想改变呢?
访谈与对象相关的对象:
您可以在定义期间设置相关的_name参数,以涵盖foo_set的名称。
clear()将所有对象集中在关联对象
多桌查询----交叉关系查询:
Django提供了一种强大而直观的方式来“处理”查询中相关关系。它会自动帮助您处理后台加入。如果您想跨越关系,则只需要使用关联的模型字段的名称并使用双重字段的行进行分开,直到您想要的字段:
它也可以反向起作用。要引用“反向”关系,您只需要使用模型的小写字母的名称即可。
让我们回忆第5章中有关书籍(书)的数据模型:
1
来自django.db导入模型
类出版商(Models.Model):
name = models.charfield(max_length = 30)
地址= model.Charfield(max_length = 50)
city = models.charfield(max_length = 60)
state_provring = model.charfield(max_length = 30)
country = models.charfield(max_length = 50)
网站= models.urlfield()
def __unicode __(self):
返回self.name
班级作者(Models.Model):
first_name = models.charfield(max_length = 30)
last_name = models.charfield(max_length = 40)
电子邮件= models.emailfield()
def __unicode __(self):
返回u'%s%s'%(self.first_name,self.last_name)
课程(Models.Model):
title = models.charfield(max_length = 100)
作者= model.manytomanyfield(作者)
publisher = models.foreignkey(发布者)
publication_date = model.datefield()
def __unicode __(self):
返回self.title
例如,在第5章的解释中,数据库对象的特定字段的值只需要直接使用属性。例如,要确定具有ID的书的标题,我们要这样做:这样做:
来自mysite.books.models导入书籍
b = book.objects.get(id = 50)
B.神经
你的django书'
但是,有一个相关的对象字段,我们没有提及它是外国基金会或Manytomanyfield,它们的影响略有不同。
访问密钥的价值(外键)
当您获得外国键字段时,您将获得相关的数据模型对象。例如:
b = book.objects.get(id = 50)
B.Publisher
出版商:Apress Publishing
b.publisher.website
您用所有()返回的是对象的列表。此[obj1,obj2,...]使用obj.objects.gets.gets.get(id = **)获取对象,或使用get_object_or_404(obj,obj,obj,id = **),使用obj.objects.get(id = **)。属性名称既是obj.objec中的obj ...
结论:以上是首席CTO的全部内容,请注意Django如何获得相关领域。感谢您阅读本网站的内容。我希望这对您有帮助。有关Django如何获得与相关字段相关的字段的更多信息,请不要忘记在此站点上找到它。