1. 程式人生 > >1- vue django restful framework 打造生鮮超市

1- vue django restful framework 打造生鮮超市

arch mis 錯誤 caption 開發流程 緩存 mysql基礎 商戶 發生

Vue+Django REST framework實戰

使用Python3.6與Django2.0.2(Django-rest-framework)以及前端vue開發的前後端分離的商城網站

項目支持支付寶支付(暫不支持微信支付),支持手機短信驗證碼註冊, 支持第三方登錄。集成了sentry錯誤監控系統

本小節內容: 介紹教程可以掌握的技術點和內容。

掌握的技術

  1. Vue + Django Rest Framework 前後端分離技術
  1. 徹底玩轉restful api 開發流程
  2. Django Rest Framework 的功能實現和核心源碼分析
  3. Sentry 完成線上系統的錯誤日誌的監控和告警
  4. 第三方登錄和支付寶支付的集成
  5. 本地調試遠程服務器代碼的技巧

課程系統構成

  1. vue前端項目
  2. django rest framework 系統實現前臺功能
  3. xadmin後臺管理系統

為大家準備好:

技術分享圖片 mark

vue部分:

  • API 接口
  • Vue 組件 與api的交互
  • vue的項目組織結構分析

django rest framework 專註於 restful API的開發。

Django Rest Framework 技能

  • 通用view實現 rest api接口

    • apiview方式實現api
    • genericView方式實現api接口
    • Viewset和router方式實現api接口和url配置
    • Django_filter searchFilter OrderFilter 分頁
    • 通用mixin
  • 權限和認證;

    • Authentication用戶認證設置
    • 動態設置permission、authentication
    • Validators實現字段驗證
  • 序列化和表單驗證

    • Serializer
    • ModelSerializer
    • 動態設置Serializer
  • 支付登錄註冊

    • json web token 實現登錄
    • 手機註冊
    • 支付寶支付
    • 第三方登錄
  • 進階開發

    • Django rest framework 部分核心源碼解讀
    • 文檔自動化管理
    • django rest framework的緩存
    • throttling 對用戶和ip進行限速

django rest framework 開發模塊 & API 開發過程中很多常見的問題

開發中常見的問題

  • 本地系統不能重現的bug
  • api接口出錯不能及時的發現或難以找到錯誤棧
  • api文檔管理問題,html markdown
  • 大量的url配置造成url配置越來越多難以維護
  • 接口不及時去更新文檔,對方不知道如何去測試接口,但寫文檔會花費大量的時間去維護.
  • 為了防止爬蟲,我們需要針對api的訪問頻率進行限制,比如一分鐘,一小時,或者一天用戶的訪問頻率限制問題。
  • 某些頁面將數據放入緩存,加速某些api的訪問速度

商品分類的數據一般變動比較小,可以放入緩存中。

開發中常見問題解決方案

  1. 通過介紹pycharm 的遠程服務器代碼調試技巧讓大家不僅可以調試支付,第三方登錄,還可以遠程服務器代碼來重現服務器上的bug
  2. 通過docker 搭建 sentry 來體驗錯誤日誌監控系統,讓我們不僅可以得到線上的錯誤棧還能及時在發生系統錯誤時收到郵件通知。
  3. 通過drf的文檔自動化管理以及url的註冊管理功能會讓我們省去寫文檔的時間
  4. django rest framework 的文檔管理功能不僅可以讓我們省去寫文檔的時間,還能直接在文檔裏面測試接口,自動生成js接口代碼,shell測試代碼和python測試代碼
  5. django rest framework 提供的throttle 對於api進行訪問頻率的限制
  6. 引入第三方框架來設置某些api的緩存
技術分享圖片 mark

django進階知識點

  • django mirgrations原理
  • django 信號量
  • django從請求到響應的完整過程
  • 獨立使用django的model

vue知識點

  • vue技術選型分析
  • API後端數據填充到Vue組件模板
  • Vue代碼結構分析

章節安排

  • 一二章 課程介紹以及開發環境的搭建
  • 設計數據庫以及導入原始數據
  • restful api基礎以及vue項目結構介紹
  • 商品列表頁功能
  • 商品類別功能
  • 手機註冊和用戶登錄
  • 商品詳情頁和收藏功能
  • 個人中心功能
  • 購物車、訂單和支付寶支付功能
  • 首頁,商品相關數量,緩存,訪問限速功能
  • 第三方登錄(微博 qq 微信)
  • sentry系統錯誤日誌監控

技術儲備要求

  • django基礎知識
  • 熟練掌握python語法
  • 了解vue & mysql基礎

系統功能

  • 分類 - 子分類 搜索 熱搜詞 購物車簡要展示
  • 新品 分類展示, 大類的推薦商品。
  • 賬戶密碼登錄(json web token)。微博登錄,輸入賬戶跳轉回首頁。
  • 註冊,手機號碼註冊,錯誤提示。倒計時功能,服務器端手機號碼發送頻次限制。

商品大類,導航欄。篩選,排序。富文本。

  • 商品 收藏 加入購物車 結算,移出購物車
  • 留言 支付寶支付,掃碼支付。跳回商戶頁面。
  • 訂單詳情,收貨地址
  • 個人信息,收藏商品,我的收藏。
  • 留言,上傳文件。提交,刪除留言
  • 快速瀏覽。頁面的緩存
  • 訪問速度限制 & 接口文檔 測試交互
  • 出錯處理: sentry基於drf。打印錯誤棧,當前請求用戶。郵件通知
原文學習來自簡書,作者:天涯明月笙
鏈接:https://www.jianshu.com/p/fe1993e5e558

如有侵權請立即聯系我,第一時間處理

1- vue django restful framework 打造生鮮超市