Django查询 – id vs pk

当编写django查询时,可以使用id / pk作为查询参数。

Object.objects.get(id=1)
Object.objects.get(pk=1)

pk代表主键(primary key),pk更加独立于实际的主键字段,即您不必关心主键字段是否被称为id或object_id或任何。

如果您具有不同主键字段的模型,它还可以提高您的一致性。

转载:https://codeday.me/bug/20170509/14672.html

原文地址:https://www.cnblogs.com/shengulong/p/10257710.html

时间: 2024-10-01 00:38:11

Django查询 – id vs pk的相关文章

Redis 怎么实现保存Django 查询集

我们在用Python Django开发秒杀系统的时候,要将Django 查询到商品详细信息保存到Redis缓存中去,但Redis不能直接保存对象,但有什么方法呢? 我们发现可用Python的pickle模块. pickle模块可以序列化对象并保存到磁盘中,并在需要的时候读取出来,任何对象都可以执行序列化操作. Pickle模块中最常用的函数为: 1.pickle.dumps(obj[, protocol]) 函数的功能:将obj对象序列化为string形式,而不是存入文件中. 参数讲解: obj

array_filter、find_in_set查询id是否在id集合中、concat连接字符串,ifnull、if用法

1:array_filter检查每个元素是不是数字 if(array_filter($this->data['log_id'] ,'is_numeric') !== $data['log_id']) echo '000'; 2:concat连接字符串,ifnull.if用法update logset users = concat(ifnull(users,''),if(users,',411','411'))where log_id between 453729 and 453740; 3:fi

Django 查询时间段 时间搜索 过滤

Django 查询时间段 1.大于某个时间 gt now = datetime.datetime.now()start = now – datetime.timedelta(hours=23, minutes=59, seconds=59)a=yourobject.objects .filter(youdatetimcolumn__gt=start) 大于等于某个时间:gte 查询的时候用a=yourobject.objects .filter(youdatetimcolumn__gte=sta

CAD绘图时如何查询ID坐标呢?

CAD绘图时如何查询ID坐标呢?我们在日常的CAD绘图设计过程中,常常会用到CAD查询功能,其中查询坐标功能是一个特别常用的功能之一,我们要绘制出精准优质的CAD图纸,就必须要熟练地掌握好CAD绘图的各项功能,ID坐标查询功能当然也必须要熟练地使用.小编今天就给大家分享一下.具体演示步骤如下: 步骤一:准备CAD图形素材 1.首先我们当然是先运行迅捷CAD编辑器专业版,然后打开一张我们需要的CAD素材图纸: 2.或是在CAD绘图区域里任意绘制一个图形作为素材,我们在这里绘制一个矩形为例. 步骤二

django查询集API

本节将详细介绍查询集的API,它建立在下面的模型基础上,与上一节的模型相同: from django.db import models class Blog(models.Model): name = models.CharField(max_length=100) tagline = models.TextField() def __str__(self): # __unicode__ on Python 2 return self.name class Author(models.Model

Django 查询语句汇总

1.1.1 生成查询你创建完数据模型,django会自动提供给你数据库抽象的API,可以创建.获取.修改.删除对象,本篇文档讲解如何使用API. 我们参考下面模型,一个weblog: #博客class Blog(models.Model):     name = models.CharField(max_length=100)     tagline = models.TextField()    def __unicode__(self):        return self.name#作者

django查询常用操作符

以Publisher.Author.Book的model为例子 #coding=utf-8 from django.db import models # Create your models here. class Publisher(models.Model): name=models.CharField(max_length=30) address=models.CharField(max_length=50) city=models.CharField(max_length=60) sta

django查询过滤

查询过滤: models.UserProfile.objects.filter(name__contains='liu') 忽略大小写在contains前面加个i models.UserProfile.objects.filter(id__range=[1:3]) 根据id查找想要的数据 models.UserProfile.objects.all()[:5] 查询前5条 models.UserProfile..objects.order_by('name')[0]排序取第一条 models.U

Django查询集QuerySet及两大特性

1 概念 Django的ORM中存在查询集的概念. 查询集,也称查询结果集.QuerySet,表示从数据库中获取的对象集合. 当调用如下过滤器方法时,Django会返回查询集(而不是简单的列表): all():返回所有数据. filter():返回满足条件的数据. exclude():返回满足条件之外的数据. order_by():对结果进行排序. 也就意味着查询集可以含有零个.一个或多个过滤器.过滤器基于所给的参数限制查询的结果. 从SQL的角度讲,查询集与select语句等价,过滤器像whe