067:【Django數據庫】ORM查詢條件詳解-range

【Django數據庫】ORM查詢條件詳解-range

range:
判斷某個 field 的值是否在給定的區間中。示例代碼如下:

# views.py文件內容:
from
datetime import datetime from django.utils.timezone import make_awaredef index(request):start_time = make_aware(datetime(year=2019, month=1, day=7, hour=21, minute=0, second=0 ))end_time = make_aware(datetime(year=2019, month=1, day=7, hour=22, minute=0, second=0 ))articles = Article.objects.filter(create_time__range=(start_time, end_time))print(articles.query)print(articles)return HttpResponse("success")
# models.py文件內容:
class
Article(models.Model):title = models.CharField(max_length=100)content = models.TextField()category = models.ForeignKey('Category', on_delete=models.CASCADE, null=True)# category = models.ForeignKey('Category', on_delete=models.CASCADE, null=True, related_query_name=articles)create_time = models.DateTimeField(auto_now_add=True, null=True) # 主要是這行

以上代碼的意思是提取所有發布時間在 2019/1/7 21點 到 22點之間的文章。將翻譯成以下的 SQL 語句:

SELECT `article`.`id`, `article`.`title`, `article`.`content`, `article`.`category_id`, `article`.`create_time` FROM `article` WHERE `article`.`create_time` BETWEEN 2019-01-07 13:00:00 AND 2019-01-07 14:00:00

需要注意的是,以上提取數據,不會包含最后一個值。也就是不會包含 2019/1/7 22點 的文章。而且另外一個重點,因為我們在 settings.py 中指定了 USE_TZ=True ,并且設置了 TIME_ZONE='Asia/Shanghai' ,因此我們在提取數據的時候要使用 django.utils.timezone.make_aware 先將 datetime.datetime 從 navie 時間轉換為 aware 時間。 make_aware 會將指定的時間轉換為 TIME_ZONE 中指定的時區的時間。

實例截圖如下:

?

轉載于:https://www.cnblogs.com/zheng-weimin/p/10235874.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/449858.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/449858.shtml
英文地址,請注明出處:http://en.pswp.cn/news/449858.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

貼吧爬蟲

import requests import re#根據url獲取網頁html內容 def getHtmlContent(url):page requests.get(url)return page.texthtml getHtmlContent(https://tieba.baidu.com/p/4840106397)#以html中使用re模塊解析出所有jpg圖片的url #百度貼吧html中jpg圖片的url格式:…

別把自己變成了“二等公民”

上周參加一個代碼審查會,在會上發現了設計上的一個很嚴重的錯誤。于是,我提了好幾個問題,想知道為什么會出現這一錯誤。但是,我的同事告訴我這都是印度團隊做的設計。需要提供的一個背景信息是,這個項目是我所在的研發…

jquery函數加載及生成隨機數

$(document).ready(function () {var code ; //在全局定義驗證碼  1.將函數寫好 function createCode(){code "";var codeLength 4;//驗證碼的長度var checkCode document.getElementById("code");var random new Array(0,1,2,3,4,5,6,7,8,9,A,B,C…

rsync解說

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 一、簡介1、認識Rsync(remote synchronize)是一個遠程數據同步工具,可通過LAN/WAN快速同步多臺主機間…

關于java中getClass()和getSuperClass()的講解

為了講解這個問題,我們先來看一下下面的代碼: package com.yonyou.test;import java.util.Date;class Test extends Date{private static final long serialVersionUID 1L;public static void main(String[] args) {new Test().print();}public void print(){Syste…

期權回測框架設計思路

期權回測,博主已經研究了很長時間,也接觸了不少平臺,如真格,以及這位博主提供的思路(https://blog.csdn.net/luoqingyong/article/details/107523930),利用backtrader進行期權回測。確實國內做期…

UVA815

這道題主要學到的就是數據結構的組織,一些需要從小到大排列的東西,這些東西還有對應的東西。這個時候使用map可以解決 下面貼出代碼。其中所使用的思想,估計這個東西是沒法學的,這就只能是靈感 //這是什么吉爾題,題意都…

我對應聘者的面試原則

最近參與了幾次單位招聘面試工作,在面試工程師時,我是用我的分層準則指導與候選人的交流內容,以確定他的能力層次是否達到我所期望的。大體上軟件工程師可以分為三大層次,分別是技術知識積累層、掌握設計方法層以及運用開發方法論…

rsync:基本命令和用法

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 2.1 說在前面的話 rsync官方網站: https://www.samba.org/ftp/rsync/rsync.html rsync是可以實現增量備份的工具。配合任務計劃&#…

Java常見排序算法之堆排序

在學習算法的過程中,我們難免會接觸很多和排序相關的算法。總而言之,對于任何編程人員來說,基本的排序算法是必須要掌握的。 從今天開始,我們將要進行基本的排序算法的講解。Are you ready?Let‘s go~~~ 1、排序算法的…

python量化數據處理小細節2

處理數據主要使用的是DataFrame格式,偶爾也會有list格式。 首先定位尋找數據:主要為loc,iloc 創建DataFrame: df pd.DataFrame([1,2,3,4,5],index [a,b,c,d,e],columns[aa])或 datapd.DataFrame(np.arange(16).reshape(4,4),i…

python編碼問題

參考:https://blog.csdn.net/qq_33692803/article/details/81321340 注意區分系統默認編碼和本地默認編碼、編碼和解碼的區別轉載于:https://www.cnblogs.com/jianglinliu/p/10418437.html

軟件工程師所需掌握的“終極技術”是什么?

最近,我在微博上看到程序員鄒欣老師發的一條微博 — “不少大學同學都有一個想法:先做幾年技術,然后做管理;也有一些同學說:我技術不行,希望直接找到一個管理的工作,就像PM那樣。請看 PM 需要什…

linux中項目部署和日志查看

1 查找進程 前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 ps -ef | grep java 查看所有關于java的進程 root 17540 1 0 2009 ? 01:42:27 /usr/java/jdk1.5.0_1…

dspmq dspmqver command not found(dspmq命令找不到,dspmqver主安裝目錄設置不正確

[rootrhv6-64b ~]# su - mqm -bash-4.1$ dspmq -bash: dspmq: command not found(dspmq命令找不到) -bash-4.1$ dspmqver(dspmqver主安裝目錄設置不正確) AMQ8594: WebSphere MQ commands are no longer available in /usr/bin. I…

lambda表達式與委托與線程初步談論-基于劉鐵錳視頻觀后操作

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;//線程 using System.Threading;//引用線程方法namespace ConsoleApplication2 {class Program{static void Main(string[] args){//委托詳解//Func返回…

2020-11-21

獲取數據后,需要對數據進行合并,通常是日期,也有對相同公司進行合并 下面就研究數據合并的常用方法: 目錄appendmergeon屬性how屬性(inner,outer,left , right)indicato…

走技術線,還是技術管理線?

最近因為要給剛畢業的學生做一次演講,所以就職業發展這類話題先以寫博客的形式做一些思考,希望屆時能給同學們帶來質量更高的內容。我在《駕馭你的“職場布朗運動”》一文中談了25條職場感悟并提出了“走技術線,還是技術管理線?”…

[Nikon D80]櫻花盛開的校園

花開花落,陽春三月,隨身背著相機在學校里游走,不斷的尋找視角。知道自己拍的不好,總覺得自己拍的片有各式各樣的缺陷,也許這就是大師與學徒的區別吧。用好手頭的裝備,出好片,鍛煉Visual Effect …

「LG2664 樹上游戲」

題目 這真是一道神仙的一批的題目 定義\(s(i,j)\)表示從點\(i\)到點\(j\)經過的顏色數量 設 \[sum_i\sum_{j1}^ns(i,j)\] 求出所有的\(sum_i\) 考慮點分治 對于一個點我們用兩種方式來統計其答案 這個點作為分治重心時,分值區域內所有點到這個點貢獻這個點不是分治重…