日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

17. django分页

發布時間:2024/1/1 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 17. django分页 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

分頁

  • Django提供Paginator類來實現分頁功能,它位于django.core.paginator 模塊中
  • Paginator

    Paginator它負責分頁數據整體的管理。

    語法參數

    對象的構造方法:

    paginator = Paginator(object_list,per_page)

    參數: object_list 需要分類數據的對象列表
    per_page 每頁數據個數

    返回值: Paginator的對象

    Paginator屬性

    count: 需要分頁數據的對象總數 num_pages: 分頁后的頁面總數 page_range : 從1開始的range對象,用于記錄當前碼數 per_page : 每頁數據的個數

    Paginator對象.page(number)

    • 參數number為頁碼信息(從1開始)
    • 返回當前number頁的信息
    • 如果提供頁碼不存在,拋出InvalidPage異常

    Paginator異常excption

    • PageNotAnInteger: 當向page()傳入一個不是整數的值是拋出
    • EmptyPage : 當向page()傳入一個有效值,但那個頁面沒有任何拋出

    Page對象

    負責具體某一頁的數據的管理

    創建對象

    Paginator對象.page(number)方法返回Page對象

    page=paginator.page(頁碼)

    Page對象屬性

    object_list : 當前頁上所有數據對象的列表 number : 當前頁的序號,從1開始 paginator : 當前page對象相關的Paginator對象

    Page對象方法

    has_next(): 如果有下一頁返回Ture has_previous() : 如果有上一頁返回True has_other_pages(): 如果有上一頁或下一頁返回True next_page_number() : 返回下一頁的頁碼,如果下一頁不存在,拋出InvalidPage異常 previous_page_numer() : 返回上一頁的頁碼,如果上一頁不存在,拋出InvalidPage異常

    示例

    視圖層

    def test_page(request):from django.core.paginator import Paginator# 第一種:/test_page/4 # 第二種: /test_page?page=1page_num=request.GET.get("page",1) # 如果沒有取到頁碼,就給1all_data = ['a','b','c','d','e','f','j','h','i']# 初始化paginatorpaginator=Paginator(all_data,2)# 每頁顯示2條#初始化 具體頁碼的page對象c_page=paginator.page(int(page_num))return render(request,'test_page.html',locals())

    模板層

    <body>{% for p in c_page %}<p>{{ p }}</p>{% endfor %}{% if c_page.has_previous %}<a href="/test_page?page={{ c_page.previous_page_number }}" >上一頁</a>{% else %}上一頁{% endif %}{% for p_num in paginator.page_range %}{% if p_num == c_page.number %}{{ p_num }}{% else %}<a href="/test_page?page={{ p_num }}"> {{ p_num }}</a>{% endif %}{% endfor %}{% if c_page.has_next %}<a href="/test_page?page={{ c_page.next_page_number }}" >下一頁</a>{% else %}下一頁{% endif %}</body>

    友情鏈接

    MySQL性能優化_原理_實戰

    1、MySQL在金融互聯網行業的企業級安裝部署

    目錄章節
    版本說明版本說明
    安裝MySQL規范1 安裝方式
    2 安裝用戶
    3 目錄規范
    MySQL 5.7 安裝部署1 操作系統配置
    2 創建用戶
    3 創建目錄
    4 安裝
    5 配置文件
    6 安裝依賴包
    7 配置環境變量
    8 初始化數據庫
    9 重置密碼
    MySQL8 安裝MySQL8 安裝
    源碼安裝1 安裝依賴包
    2 生成源碼包
    3 創建用戶
    4 編譯安裝
    5 配置數據庫
    6 連接mysql
    多實例部署及注意事項1 多實例概念
    2 多實例安裝
    3 mysqld_multi(多實例第二種安裝方式)

    2、mysql啟動關閉原理和實戰_及常見錯誤排查

    目錄章節
    生產中MySQL啟動方式1、 啟動原理
    2、參數文件默認位置及優先級
    3、 以server方式啟動
    4、 mysqld_safe方式
    5、 mysqld 方式
    6、 systemctl 方式
    關庫1、相關參數innodb_fast_shutdown
    2、相關參數innodb_force_recovery
    3、關閉mysql多種方式
    常見MySQL啟動失敗案例1.、目錄權限
    2、參數問題
    3、配置文件
    4、端口占用
    5、誤刪二進制文件
    6、undo表空間異常
    7、binlog緩沖異常
    MySQL啟動失敗排查方法MySQL啟動失敗排查方法
    連接MySQL數據庫的方式連接MySQL數據庫的方式
    MySQL數據庫用戶安全策略1、初始化數據庫
    2、修改密碼
    3、刪除無用的用戶
    4、mysql_secure_installation
    找回丟失的用戶密碼找回丟失的用戶密碼

    3、MySQL字符集和校對規則

    目錄章節
    MySQL字符集和校驗規則MySQL字符集和校驗規則
    查看字符集方法1、查看mysql支持的字符集
    2、查看字符集的校對規則
    3、查看當前數據庫的字符集
    4、查看當前數據庫的校對規則
    MySQL字符集設置1、字符集設置層級關系
    2、設置MySQL服務器級別字符集
    3、設置創建對象的字符集
    字符集案例1、常用字符集每個漢字占用字節多少
    2、大小案例
    插入中文亂碼解決插入中文亂碼解決
    數據庫常見字符集及如何選擇字符集數據庫常見字符集及如何選擇字符集
    生產中如何徹底避免出現亂碼生產中如何徹底避免出現亂碼

    4、史上最詳細的Mysql用戶權原理和實戰_生產案例

    目錄章節
    訪問控制1、連接驗證(階段一)
    2、允許的連接
    3、連接優先級
    4、請求驗證(階段二)
    用戶管理1、新增用戶
    2、修改用戶
    3、刪除用戶
    4、查看用戶
    密碼管理1、密碼修改
    2、密碼過期設置
    3、set password
    4、密碼過期策略
    5、密碼插件
    MySQL用戶權限管理1、權限粒度
    2、顯示賬戶權限
    3、顯示賬戶非權限屬性
    4、庫級權限
    5、表級權限
    6、列級權限
    7、權限回收
    資源限制1、用戶創建指定配額
    2、修改配額
    MySQL用戶權限案例1、斷掉已清理的用戶
    2、忘記密碼
    3、如何禁止一個ip段的某個用戶登錄
    4、創建開發賬號
    5、創建復制賬號
    6、創建管理員賬號

    5、InnoDB引擎原理和實戰_通俗易懂

    目錄章節
    緩沖池1、默認引擎
    2、設置緩沖池大小
    3、優化緩沖池
    4、管理緩沖池
    5、數據頁類型
    線程1、IO線程
    2、主線程
    index pageindex page
    insert buffer pageinsert buffer page
    重做日志重做日志
    回滾日志回滾日志
    checkpoint,刷寫臟頁check pointcheckpoint
    關鍵特性1、插入緩沖
    2、數據寫入可靠性提升技術-doublewrite
    3、自適應哈希索引-AHI
    innodb預讀預寫技術預讀寫

    6、MySQL文件詳解_物理結構_邏輯結構_原理和案例

    目錄章節
    參數和配置文件1、文件位置
    2、查找參數
    3、參數類型
    4、參數修改
    5、示例一
    6、示例二
    7、注意事項
    錯誤日志文件錯誤日志
    通用日志通用日志
    慢查詢日志慢日志
    binlog1、記錄什么
    2、用途
    3、開啟和參數配置
    4、日志查看
    5、日志刷新
    6、刪除日志
    7、日志分析(mysqlbinlog)
    8、利用二進制日志文件恢復誤刪的表
    InnoDB存儲引擎表空間文件表空間文件
    主從同步相關文件主從同步文件
    套接字文件套接字文件
    pid 文件pid 文件
    redo log1、redo初識
    2、日志組
    3、與oracle redo的區別
    4、相關參數
    5、和binlog的區別
    6、redo 緩沖區(innodb_flush_log_at_trx_commit)
    InnoDB存儲引擎邏輯結構1、表空間
    2、段
    3、區
    4、頁
    表碎片清理1、判斷是否有碎片
    2、整理碎片
    表空間文件遷移1、需求
    2、操作

    7、SQL編程開發與優化事項

    目錄章節
    常用語句1、導入數據
    2、庫操作
    3、表操作
    4、數據操作
    5、use性能影響
    6、delete、truncate、drop的區別
    7、SQL語句分類
    數據類型與性能1、整型
    2、浮點型
    3、字符串類型
    4、日期類型
    MySQL約束1、unsigned/signed
    2、not null
    3、count(*) 為什么慢
    4、default
    5、unique
    6、 auto_increment
    7、primary key
    SQL編程高級1、查詢Syntax
    2、查詢列
    3、where子句
    4、group by … having子句
    5、order by子句
    6、limit子句(分頁)
    7、聚合函數
    8、合并查詢
    9、多表查詢
    10、子查詢
    表的元數據庫管理1、統計應用庫哪些表沒有使用innodb存儲引擎
    2、如何查看表中是否有大對象
    3、統計數據庫大小
    4、統計表的大小

    8、MySQL索引原理和案例

    目錄章節
    MySQL索引與二分查找法1、什么是索引
    2、索引的優缺點
    3、索引的最大長度
    4、二分查找法:折半查找法
    5、mysql一張表存多少數據后,索引性能就會下降?
    剖析b+tree數據結構1、B和B+樹的區別
    2、索引樹高度
    3、非葉子節點
    4、指針
    5、葉子節點
    6、雙向指針
    7、b+tree插入操作
    8、b+tree刪除操作
    相輔相成的聚集索引和輔助索引1、聚集索引
    2、聚集索引特點
    3、聚集索引的優勢
    4、輔助索引
    覆蓋索引與回表查詢1、回表查詢
    2、覆蓋索引
    創建高性能的主鍵索引1、主鍵索引創建的原則
    2、主鍵索引的特點
    3、為什么建議使用自增列作為主鍵
    唯一索引與普通索引的性能差距1、唯一索引特點
    2、普通索引特點
    3、唯一索引與普通索引的性能差距
    前綴索引帶來的性能影響1、作用
    2、壞處
    如何使用聯合索引1、什么是聯合索引
    2、創建原則
    3、排序
    Online DDL影響數據庫的性能和并發1、5.6版本之前
    2、新版本
    3、online ddl語法
    4、相關參數
    5、示例
    6、影響
    pt-ocs原理與應用1、安裝pt-osc
    2、pt-osc語法
    3、案例
    4、pt-osc原理
    生產中索引的管理1、建表時創建索引
    2、建表后創建索引
    3、查看索引
    SQL語句無法使用索引的情況1、where條件
    2、聯合索引
    3、聯表查詢
    4、其他情況

    9、information_schema和sys中性能查看

    目錄章節
    最常用的STATISTICS和TABLES1、STATISTICS:用于存放索引的信息
    2、TABLES:用于存放庫表的元數據信息
    判斷索引創建是否合理1、選擇性
    2、索引創建的建議
    檢查聯合索引創建是否合理1、聯合索引創建是否合理
    2、有了聯合索引(a,b),還需要單獨創建a索引嗎?
    如何查找冗余索引查找冗余索引
    查找產生額外排序的sql語句額外排序的sql語句
    查找產生臨時表的sql語句臨時表的sql語句
    全表掃描的sql語句全表掃描的sql語句
    統計無用的索引無用的索引
    索引統計信息1、存儲索引統計信息
    2、如何查看索引統計信息

    10、MySQL優化器算法與執行計劃

    目錄章節
    簡單嵌套查詢算法-simple nested-loop joinsimple nested-loop join
    基于索引的嵌套查詢算法-index nested-loop joinindex nested-loop join
    基于塊的嵌套查詢算法- block nested-loop joinblock nested-loop join
    Multi-Range ReadMRR
    bached key access joinBKA
    mysql三層體系結構體系結構
    Index Condition Pushdown索引條件下推
    一條查詢SQL語句是怎樣運行的查詢SQL語句
    一條更新SQL語句是怎樣運行的更新SQL語句
    MySQL長連接與短連接的選擇1、相關參數
    2、斷開連接
    執行計劃explain1、語法
    2、執行計劃解析

    11、MySQL查詢優化

    目錄章節
    MySQL查詢優化技術概覽
    子查詢優化1、優化器自動優化
    2、優化措施:子查詢合并
    3、優化措施:子查詢上拉技術
    外連接消除外連接消除
    生產環境不使用join聯表查詢不使用join
    group by分組優化1、group by執行流程
    2、為什么group by要創建臨時表
    order by排序優化排序優化
    MySQL性能抖動問題性能抖動問題
    count(*)優化count(*)優化
    磁盤性能基準測試1、安裝sysbench
    2、生成文件
    3、測試文件io
    4、清除文件
    MySQL基準測試1、生成數據
    2、測試(讀)
    3、測試(寫)
    4、清理數據

    12、事務原理和實戰

    目錄章節
    認識事務認識事務
    事務控制語句1、開啟事務
    2、事務提交
    3、事務回滾
    事務的實現方式1、原子性
    2、一致性
    3、隔離性
    4、持久性
    purge thread線程purge thread線程
    事務統計QPS與TPS1、QPS
    2、TPS
    事務隔離級別1、隔離級別
    2、查看隔離級別
    3、設置隔離級別
    4、不同隔離級別下會產生什么隔離效果
    事務組提交group commit組提交
    事務兩階段提交兩階段提交
    MVCC多版本并發控制1、MVCC原理
    2、MVCC案例

    13、鎖的原理和應用

    目錄章節
    認識鎖1、鎖的作用
    2、加鎖的過程
    3、鎖對象:事務
    innodb行鎖1、行鎖類型
    2、共享鎖(S鎖)
    3、排他鎖(X鎖)
    索引對行鎖粒度的影響1、行鎖粒度有哪些
    2、在RC隔離級別下不同索引產生的鎖的范圍
    3、RR隔離級別下不同索引產生鎖的范圍
    FTWRL全局讀鎖FTWRL全局讀鎖
    innodb表鎖innodb表鎖
    innodb意向鎖與MDL鎖1、意向鎖
    2、意向鎖作用
    3、意向鎖沖突情況
    4、MDL鎖
    自增鎖自增鎖
    插入意向鎖插入意向鎖
    死鎖1、什么是死鎖
    2、相關參數
    3、避免死鎖
    4、鎖的狀態
    兩階段鎖協議兩階段鎖協議

    14、慢查詢原理和實戰_快速優化方法_優化工具

    目錄章節
    1. 系統狀態show status
    2. 慢查詢2.1 慢查詢開啟
    2.2 簡單示例
    2.3 數據準備
    3. mysqldumpslow3.1 語法
    3.2 常見用法
    4. pt-query-digest4.1 安裝
    4.2 語法選項
    4.3 報告解讀
    4.4 用法示例
    5. 優化工具(soar)5.1 安裝配置
    5.2 添加數據庫
    5.3 語句優化

    15、備份恢復原理和實戰_邏輯備份_物理備份_金融行業備份還原腳本

    目錄章節
    1.生產中備份方式1.1 物理備份與邏輯備份
    1.2 聯機與脫機備份
    1.3 完整備份與增量備份
    1.4 常用命令
    2.mysqldump備份2.1 相關參數
    2.2 備份所有數據庫
    2.3 備份指定數據庫
    2.4 備份指定表
    2.6 只導出結構
    2.7 只導出數據
    2.8 --tab(生成文本,類似load)
    2.8 mysqldump原理
    2.9 binlog異步備份
    2.10 利用mysqldump全備及binlog恢復數據
    3.xtrabackup3.1 Xtrabackup安裝
    3.2 原理
    3.2 備份過程
    3.4 恢復原理
    3.3 相關參數
    3.4 xtrabackup相關文件
    3.5 備份示例
    3.6 還原示例
    4.binlog備份和恢復(數據庫恢復)4.1 找到恢復時間點
    4.2 增量恢復
    5. 生產環境的備份恢復實戰5.1 實施部署
    5.1.1 環境清單
    5.1.2 備份目的
    5.1.3 備份說明
    5.1.4 實施步驟
    5.1.5 全備腳本
    5.1.6 差異備份腳本
    5.2 實施部署備份還原
    5.2.1 Xtraback還原全量/差異備份
    5.2.2 故障點數據恢復
    5.2.3 增量恢復

    16、主從復制,gtid,并行復制_半同步復制_實操案例_常用命令_故障處理

    目錄章節
    1.認識主從復制1.1 主從復制原理深入講解
    1.2 主從復制相關參數
    1.3.主從復制架構部署
    1.4從庫狀態詳解
    1.5 .過濾復制
    2 .gtid復制2.1 什么是GTID?
    2.2 GTID主從配置
    2.5 gtid維護
    2.4 GTID的特點
    2.3 工作原理
    2.4 gtid相關狀態行和變量
    3. 并行復制3.1 延遲的原因
    3.2 并行復制設置
    3.3 查看并行復制
    4. 增強半同步復制4.1 異步復制
    4.2 半同步復制
    4.3 增強半同步復制
    4.4 配置增強半同步
    5. 案例5.1 主庫刪除操作導致sql線程關閉案例
    5.2 主從復制中斷解決方案及案例
    5.3 延遲復制
    5.4 主庫drop誤操作利用延遲復制恢復案例
    6 常用命令6.1 啟動線程
    6.2 關閉線程
    6.3 查看
    6.4 重置
    6.5 主從數據一致性校驗

    17、MySQL高可用和讀寫分離架構
    MHA

    目錄章節
    MHA介紹
    架構和相關組件架構和相關組件
    工作流程工作流程
    MHA高可用架構部署1、環境準備
    2、軟件安裝
    3、創建軟鏈接
    4、配置各節點互信
    5、節點免密驗證
    6、mha管理用戶
    7、配置文件
    8、狀態檢查
    9、開啟MHA
    主庫宕機故障模擬及處理主庫宕機故障模擬及處理
    MHA VIP自動切換VIP自動切換
    MHA主從數據自動補足MHA主從數據自動補足

    Atlas

    目錄章節
    Atlas讀寫分離高性能架構介紹
    安裝配置安裝配置
    配置注解配置注解
    啟動和關閉啟動和關閉
    讀寫分離架構應用讀寫分離架構應用
    創建應用用戶創建應用用戶
    Atlas在線管理Atlas在線管理
    讀寫分離避坑指南讀寫分離避坑指南

    18、MySQL分庫分表_原理實戰

    目錄章節
    1.MyCAT分布式架構入門及雙主架構1.1 主從架構
    1.2 MyCAT安裝
    1.3 啟動和連接
    1.4 配置文件介紹
    2.MyCAT讀寫分離架構2.1 架構說明
    2.2 創建用戶
    2.3 schema.xml
    2.4 連接說明
    2.5 讀寫測試
    2.6 當前是單節點
    3.MyCAT高可用讀寫分離架構3.1 架構說明
    3.3 schema.xml(配置)
    3.4 文件詳解
    3.4.1 schema標簽
    3.4.2 table標簽
    3.4.3 dataNode標簽
    3.4.4 dataHost
    3.4 讀寫測試
    3.5 故障轉移
    4.MyCAT垂直分表4.1 架構
    4.2 新建表
    4.3 配置mycat
    4.4 驗證
    5 MyCAT水平分表-范圍分片5.1 新建表
    5.2 schema.xml
    5.2 rule.xml
    5.3 autopartition-long.txt
    5.4 驗證
    6. MyCAT水平分表-取模分片取模分片
    7. MyCAT水平分表-枚舉分片枚舉分片
    8. MyCAT全局表與ER表全局與ER表
    8.1 全局表8.1.1 特性
    8.1.2 建表
    8.1.3 配置
    8.1.4 驗證
    8.1.5 分析總結(執行計劃)
    8.2 ER表8.2.1 特性
    8.2.2 建表
    8.2.3 配置
    8.2.4 測試驗證,子表是否跟隨父表記錄分片
    8.2.5 分析總結(執行計劃)

    19、基準性能測試_sysbench

    目錄章節
    1. sysbench1.1 用途
    1.2 安裝
    1.3 版本
    1.4 查看幫助
    1.5 測試過程階段
    2 CPU 性能測試2.1 測試原理
    2.2 查看幫助
    2.3 測試
    3. 內存性能測試3.1 查看幫助信息
    3.2 測試過程
    4.磁盤性能基準測試4.1 查看幫助
    4.2 生成文件(prepare)
    4.3 測試文件io(run)
    4.4 結果分析
    4.5 清除文件(cleanup)
    5. 線程測試5.1 查看幫助信息
    5.2 測試過程
    6. MySQL基準測試6.1 語法參數
    6.2 生成數據
    6.3 測試(讀)
    6.4 測試(寫)
    6.5 清理數據

    總結

    以上是生活随笔為你收集整理的17. django分页的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。