简介:许多朋友问如何在Django获得关键领域。首席执行官在本文中注明将为您提供一个详细的答案,以供所有人参考。我希望这对每个人都会有所帮助!让我们一起看看!
您用所有()返回的是对象的列表。此[obj1,obj2,...]使用obj.objects.gets.gets.get(id = **)获取对象,或使用get_object_or_404(obj,obj,obj,id = **),使用obj.objects.get(id = **)。属性名称既是obj.objec中的obj ...
Django模型通常使用Django的GET和过滤器方法。重要的是要找出两者之间的区别。
为了说明两者之间的差异,定义了2个模型
班级学生(Models.Model):
name = models.chafield('name',max_length = 20,默认='')
age = models.charfield('age',max_length = 20,默认='')
课程(Models.Model):
学生=型号。
1.让我们先谈谈django的获取方法:
1django的GET方法是从数据库中获得匹配结果并返回对象。如果记录不存在,它将报告错误。
例如,如果我的数据库中有记录,则记录的值为“ python”,我使用student = statent.objects.get。
它返回记录对象。您可以通过学生查看。__dict__。它返回字典表格。
而且,如果我使用GET方法检查数据库中不存在的记录,则该程序将报告错误。
例如:student = student.objects.gets.get(name ='pharaoh'),您可以自己运行。
2如果您使用django获取相关表的数据,并且如果密钥表的数据中有2个以上的数据,将会报告错误。
例如,我的学生表中有一个记录:
ID名称年龄
1 Python 24
书籍表:
id student_id
1 1
21
我用
student = student.objects.get(name ='python')
book = book.objects.get(学生)
它还报告了一个错误,因为书籍表有2个记录和学生表。
2.让我们谈谈Django过滤器:
1Django滤波器方法是匹配数据库的结果,并返回对象列表。如果记录不存在,它将返回[]。
例如,我的数据库中有一个记录。如果记录的价值为python,我使用student = student.objects.filter(name ='python'))))))))
返回的学生是对象的列表。可以看出,学生[0]的结果和上述方法返回的雕像是相同的。
Django支持聚合,可以按价格总结:
来自django.db.models导入总和
ret = product.objects.filter(id__in = plist).Agregate(sum('price'))
结论:以上是CTO注释为每个人编写的Django中如何获取Django中的关键字段的全部内容。感谢您阅读本网站的内容。我希望这对您有帮助。有关如何在Djangodon中获取关键字段的更多信息,请不要忘记在此站点上找到它。