当前位置: 首页 > 网络应用技术

如何在Django(Django自我相关)中获取相关字段

时间:2023-03-07 17:15:29 网络应用技术

  指南:本文的首席执行官注释将介绍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如何获得与相关字段相关的字段的更多信息,请不要忘记在此站点上找到它。