Stories

Detail Return Return

【Flask開發】嘿馬文學web完整flask項目第8篇:1.同類熱門推薦,2.小説目錄【附代碼文檔】 - Stories Detail

🏆🏆🏆教程全知識點簡介:1. 內容 2. 目標 1.1產品與開發 1.2環境配置 1.3 運行方式 1.4目錄説明 2.用户認證 2.1微某信平台 Json Web Token(JWT) 定義路由,書架管理--添加書籍 3.書架 4.1分類列表 5.搜索 5.3搜索-精準&高匹配&推薦 6.小説 6.4推薦-同類熱門推薦 7.瀏覽記錄 8.1配置-閲讀偏好 8.配置 9.1項目部署uWSGI 配置 啓動 9.部署 10.1異常和日誌 10.補充 10.2 flask-restful 1.項目目錄實現 2.數據庫的設計 3.數據庫遷移: 1.JWT:json web token 2.jwt工具的封裝 4.用户權限校驗 5.登錄驗證裝飾器 1.書架列表 2.書架管理 3.最後閲讀 2.分類書籍列表 3.熱門搜索 7.3小説-詳情 2.小説目錄 2.閲讀偏好 3.閲讀設置

<!-- start:bj1 -->

📚📚倉庫code.zip 👉直接-->:   https://gitee.com/yinuo112/Backend/blob/master/Flask/嘿馬文學...    🍅🍅

<!-- end:bj1 -->

✨ 本教程項目亮點

🧠 知識體系完整:覆蓋從基礎原理、核心方法到高階應用的全流程內容
💻 全技術鏈覆蓋:完整前後端技術棧,涵蓋開發必備技能
🚀 從零到實戰:適合 0 基礎入門到提升,循序漸進掌握核心能力
📚 豐富文檔與代碼示例:涵蓋多種場景,可運行、可複用
🛠 工作與學習雙參考:不僅適合系統化學習,更可作為日常開發中的查閲手冊
🧩 模塊化知識結構:按知識點分章節,便於快速定位和複習
📈 長期可用的技術積累:不止一次學習,而是能伴隨工作與項目長期參考

🎯🎯🎯全教程總章節


🚀🚀🚀本篇主要內容

1.同類熱門推薦

  • 接口設計:

    • 請求地址:'/recommend/hots/category_id'
    • 請求方法:GET
    • 請求參數:
    參數名稱                是否必須                參數位置                參數説明
    category_id            True                    url路徑參數            書籍分類id
  • 返回結果:書籍的基本信息
  • 實現步驟:

    • 1.定義路由,接收url路徑參數,作為視圖函數的參數
    • 2.根據參數分類id,查詢數據庫、獲取大分類數據
    • 3.判斷如果有大分類數據
    • 4.獲取該大分類下面的二級分類數據,
    • 5.根據分類,查詢書籍表,獲取對應分類的書籍數據,默認查詢4條
    • 6.保存書籍的基本信息
    • 7.轉成json格式返回
    • 8.如果沒有大分類數據,默認返回4條數據。

2.小説目錄

  • 在applet_app目錄下,新建book.py文件
  • 接口設計:

    • 請求地址:'/book/chapters/book_id'
    • 請求方法:GET
    • 請求參數:
    參數名                    參數類型                是否必須                參數位置                參數説明
    book_id                    int                        True                url路徑參數                書籍id
    page                        int                        True                查詢字符串                頁數,默認1
    pagesize                int                        True                查詢字符串                每頁數據的條目數
    
    [Matplotlib 文檔](https://matplotlib.org/stable/)
    
    order                        int                        True                查詢字符串                排序條件,0表示升序,1降序
    
    • 返回結果:章節目錄信息,分類信息

Flask 模板指南

  • 實現步驟:

    • 1.獲取查詢字符串參數,page/pagesize/order
    • 2.根據書籍id參數,查詢書籍表
    • 3.查詢書籍章節目錄表,按照書籍id進行過濾查詢
    • 4.根據order參數的排序條件,如果1倒序排序,如果0升序排序
    • 5.對排序的結果,進行分頁處理
    • 6.遍歷分頁的數據,獲取章節信息
    • 7.轉成json格式,返回數據

3.小説閲讀

  • 接口設計:

    • 請求地址:'/book/reader/book_id'
    • 請求方法:GET
    • 請求參數:
    參數名                        是否必須                    參數類型                        參數説明
    book_id                        True                        int                            url路徑參數,書籍id
    chapter_id                False                        int                            章節id,如果不傳,默認按照用户閲讀進度展示
    Content-Type            True                application/json        請求頭中指定數據格式
    • 返回數據:小説書名、具體的章節id、章節內容;

python-decouple 文檔

  • 實現步驟:

    • 1.根據書籍id,查詢書籍表,確認書籍的存在
    • 2.獲取查詢字符串參數章節id,校驗參數
    • 3.根據章節id,查詢書籍章節表
    • 4.判斷查詢結果
    • 5.如果數據存在,查詢書籍內容表
    • 6.如果用户登錄,查詢用户閲讀進度表;
    • 7.返回數據

4.小説詳情

  • 實現步驟:

    • 1.根據書籍id,查詢數據書籍表
    • 2.判斷,如果用户登錄,查詢用户的瀏覽記錄
    • 3.判斷查詢結果,保存瀏覽記錄
    • 4.如果用户未登錄,根據書籍id查詢書籍章節表,默認倒序排序。
    • 5.返回結果

1.我的瀏覽記錄

  • 接口設計:

    • 請求地址:'/my/histories'
    • 請求方法:GET
    • 請求參數:
    參數名                是否必須                參數類型                參數説明
    page                    True                    int                     查詢字符串,頁數
    pagesize            True                    int                     查詢字符串,每頁的條目數
    
    • 返回數據:分頁後的瀏覽數據,書籍名稱、作者、封面圖片、日期
  • 實現步驟:

    • 1.新建my.py文件,用來實現關於瀏覽記錄的功能代碼;
    • 2.創建藍圖、定義藍圖、註冊藍圖
    • 3.導入登錄驗證裝飾器
    • 4.獲取參數,page和pagesize

Sanic 文檔

  • 5.查詢數據庫瀏覽記錄表,根據用户id查詢,分頁處理
  • 6.獲取分頁後的數據
  • 7.轉成json,返回數據

2.閲讀偏好

  • 接口設計:

    • 請求地址:'/config/preference'
    • 請求方法:POST
    • 請求參數:
    參數名                    是否必須            參數類型            參數説明
    gender                    True            string            請求體,用户性別
    
    • 返回結果:設置成功
  • 實現步驟:

    • 1.獲取參數,post請求體中json數據
    • 2.校驗參數,性別的範圍
    • 3.查詢數據庫,用户表,獲取用户信息
    • 4.保存數據、提交數據
    • 5.返回結果

3.閲讀設置

json 文檔

  • 接口設計:

    • 請求路徑:‘/config/reader’
    • 請求方法:POST
    • 請求參數:application/json
    參數名                    是否必須            參數類型            參數説明
    brightness            True                int                亮度10-100
    font_size                True                string        字號大小
    background            True                string        內置背景顏色
    turn                        True                string        T1表示仿真、T2表示平滑、T3表示默認設置
    
    • 返回數據:返回設置成功。
  • 實現步驟:

    • 1.獲取參數、亮度、字號、背景、翻頁效果
    • 2.查詢數據庫,用户表,根據用户id查詢用户信息
    • 3.保存設置信息,提交數據
    • 4.返回結果

🚀✨ (未完待續)項目系列下一章

📚下一篇 將進入更精彩的環節!
🔔 記得收藏 & 關注,第一時間獲取更新!
🍅 一起見證整個系列逐步成型的全過程。
user avatar tianmiaogongzuoshi_5ca47d59bef41 Avatar banana_god Avatar u_16018702 Avatar u_17397181 Avatar candy_68fb0dfb0afd0 Avatar Z-HarOld Avatar lin494910940 Avatar haoqingwanqiandesigua Avatar prosuoqi Avatar writers Avatar haikuotiankong_mac Avatar matrixorigin Avatar
Favorites 21 users favorite the story!
Favorites

Add a new Comments

Some HTML is okay.