python web 購物車思路簡潔版

來源:互聯網
上載者:User

標籤:_id   重要   資料庫   思路   直接   over   watch   format   lis   

眾所周知購物車很麻煩(反正我不愛寫)....但是又很重要

1 使用DRF架構

2 關係型資料庫選擇mysql

3 非關係型資料庫選擇redis

我們首先思考許可權驗證

非登入使用者要可以儲存購物車

登入使用者也要可以儲存購物車

使用者還可以對購物車的增刪改查(不論登入和非登入)

結算時要勾選需要結算的物品

使用者登入時合并購物車

登入使用者狀態保持使用JWT&非登入使用者使用cookie

如何區分說完了 、但是購物車儲存資訊放哪是個問題

眾所周知關係型資料庫的效能真的是爛到家了

關係型資料庫每秒的訪問次數1100多次&菲關係型資料庫比如redis可以達到11W次之多

所以最佳化很重要 不然你程式跑起來之後如果訪問次數很大 伺服器很容易就崩潰 

>>>購物車 資料 >>redis

未登入使用者購物車資料存放致cookie&登入使用者直接扔到redis

技術方向 登入使用者儲存redis中需要儲存兩個 1 物品資訊,就存一個sku_id 和count (因為結算要用嘛)儲存類型>>雜湊

如果想不到就一個一個去試試完就雜湊最合適

xxxx{}.format(user_id) ={xxx:10,xxxxx:20}  雜湊真的很合適做購物車

redis 裡面還要儲存一個 勾選功能

方便的是用set類型 因為自動去重

當然如果追求完美 list也可以 大不了你自己去重嘛 lrem 然後儲存也要用lpush 還能升序

想想也很心動

當然在操作物品資訊和勾選時候!!一定要一起操作!!!!!!!!!

未登入使用者操作購物車

使用Json來儲存 很方便!!!sku和是否勾選都可以放到一個字典裡去

但是講道理你需要加個密吧

base64 and pickle 倆標準模組

最後在說說合并購物車

有些人在這會很迷惑如何區分我是誰我在哪等等

其實很簡單 你電腦裡存有cookie 然後你登入了 然後使用者和cookie不就合并了?

講道理你打什麼overwatch啊pubg啊爐石啊 哥們關係好 很多人在玩很正常。

你一個購物軟體不會共用了吧? 當然你要非說一個軟體登入兩個帳號

最多你在給他個選項是否要合并購物車

當然這隻是基本設計 真正實現起來又要肝出一片天了

python web 購物車思路簡潔版

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.