精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Go項目實戰-商品分類管理和分類樹的查詢構造

開發 前端
商品分類作為商品的主要導購信息,在手機應用和PC網頁應用上的頁面優先級并不一樣。手機因為可顯示內容比PC少,所以首頁上顯示的內容大部分都是購買率高的推薦分類、爆款單品、以及各種在做的促銷活動。

本節大綱如下:

畫板畫板

從用例圖中我們能看出來商品模塊主要由兩大類功能用例組成:

  • 商品分類的相關功能
  • 商品信息的相關功能

圖片圖片

圖片圖片

本節我們先來實現商品分類在商城應用中的常用功能。

商品分類在產品中的角色分析

商品分類作為商品的主要導購信息,在手機應用和PC網頁應用上的頁面優先級并不一樣。手機因為可顯示內容比PC少,所以首頁上顯示的內容大部分都是購買率高的推薦分類、爆款單品、以及各種在做的促銷活動。

所以商品分類在App的首頁上并不會全部展示給用戶,而是像下面這樣,在產品中留一個導航入口,進入二級頁面在進行所有商品分類的展示。

圖片圖片

而在PC網頁上因為頁面顯示區域的變大,一般在首頁上就有一個商品分類導航,通過多級聯動來展示所有的商品分類。

圖片圖片

所以服務端的API返回的分類數據的結構,要能適應商品分類在手機App和PC網頁上的展示,一般商品分類都是采用三級分類的結構進行組織和維護(層級如果再多維護分類的打工人也頭疼),以分類樹的形式返回給客戶端。

商品分類數據準備

商品分類在C端接口中不涉及添加刪除和更新的操作,這些工作統一放在管理后臺由公司的工作人員來維護。一般管理后臺的用戶跟C端的用戶是隔離開的,登錄也不是用我們之前做的用戶登錄和Token認證,更多的是單獨維護一套管理員用戶。

現在人員規模多點的中型公司,基本上管理后臺都是跟自己的員工的統一賬號打通,使用LDAP登錄認證,這樣員工離職了工號一禁用,所有的后臺就都不能登錄了,現在使用釘釘和企業微信的公司都能基于它們自己搭建LDAP服務。

我們這里就不再費力去開發管理后臺的接口和相關認證了,關于商品分類數據的創建,我們通過一個測試接口把商品分類數據初始化好,這里我為大家準備好了一份商品分類數據的JSON文件。

一共有97個分類,基本上電商App上常見的分類都有涵蓋,文件我放在了項目的資源目錄resources中,名稱為category_init_data.json

圖片圖片

resources 這個目錄我們在搭框架的時候說過是準備放靜態資源文件的,之前創建了一直沒用過,今天正好把它用起來。

不過大家別忘了,Go 程序打包的時候只會打.go文件,這種靜態資源文件需要我們使用 go embed 功能才能打包到二進制文件里去,才能保證把Go項目的運行文件放在哪它都能讀取到資源文件。

所以針對resources目錄我們在其中創建一個loader.go

//go:embed *
var f embed.FS

func LoadResourceFile(filePath string) (io.Reader, error) {
 _bytes, err := f.ReadFile(filePath)
 if err != nil {
  return nil, err
 }

 return bytes.NewReader(_bytes), nil
}

在loader.go中我們通過embed *載入當前目錄下的所有文件。并提供一個LoadResourceFile方法,讓項目的程序能讀取指定的資源文件

針對我們剛才說的商品分類初始數據JSON文件,我們在項目中通過

resources.LoadResourceFile("category_init_data.json")

就能把JSON數據加載到內存中去。稍后我們會再寫個初始化程序就能把這些數據初始化到MySQL的表里。

商品分類按層級分布和展示

商品分類信息有了,接下來就該考慮怎么把他們查出來了。PC 網頁版的購物網站首頁都有一個按層級劃分的分類導航,這個功能需要我們把商品的分類信息按層級組織好后返回給客戶端,接下來我們就來開發這個功能。

按層級劃分的分類信息該怎么實現呢?最簡單的實現方式就是先把所有一級分類查出來,遍歷它們然后再把各自下屬的二級分類查出來,同時二級分類也是這個邏輯:遍歷-每次查下屬的三級分類。

這么做當然可以,就是有點費數據庫,相當于一個獲取所有商品分類的接口有可能要查幾十次數據庫才能組織好數據。當然還有另外一種方法:先把分類數據查出來,在程序內存中靠排序、臨時變量等方式加工好要返回的數據。

那這里我們就采用第二種方法來實現啦,無論用哪種實現方式其實嚴格意義上來說都沒問題,因為像層級分類這種變更不太頻繁但是結構復雜的數據一般我們會在緩存中緩存一份數據,避免每次都讓程序去查數據庫。

開始寫邏輯前,我們先在 api/reply/commodity.go 中定義好響應的結構

type HierarchicCommodityCategory struct {
 ID            int64                          `json:"id"`
 Level         int                            `json:"level"`
 ParentId      int64                          `json:"parent_id"`
 Name          string                         `json:"name"`
 IconImg       string                         `json:"icon_img"`
 Rank          int                            `json:"rank"`
 SubCategories []*HierarchicCommodityCategory `json:"sub_categories"` // 分類的子分類
}

我們的接口會返回[]*HierarchicCommodityCategory類型的列表,即以一級分類為元素的列表,每個分類的SubCategories中會包含子分類數據,這個字段的類型也是[]*HierarchicCommodityCategory,這樣就能滿足我們返回層級分類的要求啦,即使是有四、五級分類用這個結構也沒問題。

一般商品的分類最多也就三級,再多就有點反人類了,維護起來也不好維護。

這里說一下命名的問題:Hierarchic 是形容詞意思是按層級劃分的,Hierarchy 是名詞意思是等級、層級,所以在分類層級相關的技術文檔里這兩個單詞的出現頻率比較高。

用這個響應結構最終我們會構造出下面這樣的按層劃分好的分類數據,前端拿到這樣數據后直接使用即可,不需要做更多邏輯處理。

圖片圖片

好了接下來我們來看生成商品分類層級信息的在領域服務中的主要邏輯:就能看到按層級劃分好的所有商品分類信息。

責任編輯:武曉燕 來源: 網管叨bi叨
相關推薦

2025-02-26 09:03:24

2011-12-09 16:45:59

2011年度IT博客大IT博客大賽分類推薦

2025-01-02 09:02:09

Go項目Token

2024-11-13 09:13:45

2018-06-29 10:34:40

區塊鏈數字貨幣比特幣

2009-08-13 13:42:54

C#構造函數

2013-05-06 09:59:48

2025-02-10 09:03:29

2025-03-07 09:01:14

商品模塊接口項目

2013-08-19 15:55:20

.Net

2010-06-21 14:50:41

連續ARQ協議

2011-09-16 14:55:07

WLAN干擾無線干擾WLAN

2010-09-07 14:36:24

SQL語句

2017-09-11 13:33:44

大數據數據可視化決策樹

2009-07-02 09:23:27

Hibernate緩存

2009-09-25 09:04:27

Hibernate類型

2015-06-01 15:00:51

光纖

2009-06-12 10:16:27

EJB分類

2020-04-24 12:16:48

Python 圖像分類實戰
點贊
收藏

51CTO技術棧公眾號

国产精品国产三级国产专区53| 性欧美欧美巨大69| 免费在线观看日韩欧美| 欧美一级日韩免费不卡| 欧美日韩综合精品| 免看一级a毛片一片成人不卡| 天堂在线视频免费观看| 日韩视频在线观看| 欧美视频中文字幕在线| 成人黄色在线免费观看| 欧美88888| 国模冰冰炮一区二区| 国产福利一区二区三区在线视频| 国产一区二区美女视频| 国精产品一区一区三区视频| av免费观看网址| 第一会所亚洲原创| 日本高清视频一区二区| 久久精品国产美女| 国产无遮挡又黄又爽在线观看| 婷婷久久免费视频| 国产精品人妖ts系列视频| 日韩免费在线视频| 日韩中文字幕电影| 一二三四视频在线中文| 91天堂素人约啪| 91国语精品自产拍在线观看性色 | 99爱视频在线| www.精品视频| 午夜欧美精品久久久久久久| 欧美一级在线免费| 欧美v在线观看| av文字幕在线观看| 亚洲午夜精品一区 二区 三区| 欧美影院午夜播放| 天天综合狠狠精品| 亚洲av人无码激艳猛片服务器| 少妇精品导航| 色综合欧美在线视频区| 欧美自拍资源在线| 老熟妇一区二区三区啪啪| 欧美日韩精品免费观看视频完整| 欧美v国产在线一区二区三区| 国产欧美123| 精品人妻一区二区三区含羞草| 美女诱惑黄网站一区| 伊人青青综合网站| 国产成人美女视频| 91国内在线| avove在线播放| 国产黄色大片免费看| 日韩成人动漫| 国产欧美日韩视频一区二区| 国产精品白嫩初高中害羞小美女 | 国产在线天堂www网在线观看| 蜜臀av一区二区| 欧美亚洲国产另类| 稀缺小u女呦精品呦| 污污视频在线看| 成人精品电影在线观看| 欧美中文字幕第一页| 亚洲黄色网址大全| 一区二区三区四区视频免费观看| 亚洲成a人v欧美综合天堂| 国语精品中文字幕| 中文字幕手机在线视频| 亚洲精品一二三区区别| 中文字幕无线精品亚洲乱码一区 | 亚洲综合一二区| 国产一区二区无遮挡| 中文字幕亚洲乱码熟女1区2区| 精品日韩一区| 日韩情涩欧美日韩视频| 日本精品一区二区三区四区| 九义人在线观看完整免费版电视剧| 国产精品一二三区| 欧美一区二区三区免费视| 国产成人精品亚洲男人的天堂| 精品国产乱码久久久久久果冻传媒 | 91超薄丝袜肉丝一区二区| 91亚洲自偷观看高清| 精品国产乱码久久久久久影片| 欧美深夜福利视频| av福利导福航大全在线| 中国色在线观看另类| 国产精品一区二区三区四区五区| 亚洲欧美高清视频| 麻豆高清免费国产一区| 97色伦亚洲国产| 99久久99久久精品国产| 丝袜久久网站| 亚洲欧美日韩在线高清直播| 日批视频在线看| 人人鲁人人莫人人爱精品| 亚洲精品videosex极品| 日本精品一区二区三区高清 久久| 欧美女优在线观看| 岛国一区二区三区| 成人日韩av在线| 午夜久久久久久久久久影院| 久久99精品久久久久婷婷| 欧洲成人免费aa| 中文字幕丰满人伦在线| 香蕉久久国产| 久久久在线免费观看| 免费成年人视频在线观看| 尤物在线精品| 欧美激情第6页| 三级黄色录像视频| 国产成人黄色| 亚洲热线99精品视频| 亚洲日本久久久| 精品国产中文字幕第一页| 久久亚洲精品一区| 熟女av一区二区| 精品电影一区| 国产精品欧美日韩一区二区| 91青青草视频| 国产成人精品www牛牛影视| 亚洲一区二区三区毛片| av网站在线免费看| 久久在线观看免费| 欧美日本国产精品| 中文字幕有码在线视频| 色噜噜夜夜夜综合网| 国产成人精品一区二区在线小狼| 最新精品在线| 中文字幕亚洲综合| aaa人片在线| 国产视频一区免费看| 91极品视频在线| 国产又粗又长又大视频| 韩国理伦片一区二区三区在线播放| 国产精品专区一| 国产一区二区网站| 久久色成人在线| 男女激情免费视频| 成人观看网址| 日韩三级av在线播放| 国产精品suv一区二区88| 翔田千里一区二区| 好吊色欧美一区二区三区| 羞羞的视频在线观看| 欧美日韩精品三区| 亚洲在线观看网站| japanese色系久久精品| 亚洲男人天堂网站| 天海翼一区二区| 日韩影院免费视频| 成人免费视频网址| 在线观看免费版| 亚洲综合丝袜美腿| 伦伦影院午夜理论片| 国产一区调教| 一区二区三欧美| 国产精品va无码一区二区三区| 成人精品亚洲人成在线| 激情成人开心网| 亚洲精品午夜| 午夜精品www| 亚洲欧美日韩成人在线| 国产精品女上位| 中文字幕第38页| 国产精品视屏| 午夜免费久久久久| 丰满熟妇乱又伦| 亚洲一卡二卡三卡四卡无卡久久| 欧美成人免费高清视频| 国产精品久一| 亚洲欧美制服另类日韩| 99re这里只有精品在线| 国产成人在线视频网址| www.国产在线播放| 精品国产导航| 日韩视频一区在线| 毛片视频网站在线观看| 2欧美一区二区三区在线观看视频| 波多野结衣家庭教师在线| 国产精成人品2018| 亚洲黄页网在线观看| 日本福利片在线观看| 日日夜夜精品视频天天综合网| 日本一区免费看| 麻豆网站在线看| 欧美日韩中国免费专区在线看| 国产交换配乱淫视频免费| 日韩在线观看一区二区| 一区二区三区四区视频在线 | 欧美精品午夜视频| 草莓视频18免费观看| 欧美国产一区二区在线观看| 91免费视频污| 亚洲黄页一区| 亚洲精品日产aⅴ| 丰满的护士2在线观看高清| 欧美日韩亚洲综合一区| www.狠狠爱| 亚洲一区激情| 亚洲福利av在线| 欧美大片免费| 久久久精品中文字幕| 中文字幕在线2019| 亚洲综合激情另类小说区| 好吊日免费视频| 99精品福利视频| 国产免费一区二区| 日韩一区二区三区免费视频| 欧美黑人性猛交| 超碰国产在线| 欧美视频完全免费看| 国产一区二区播放| 久久久久久久久97黄色工厂| 欧美视频第一区| 一区二区三区在线电影| 蜜桃传媒视频第一区入口在线看| 2021中文字幕在线| 少妇高潮久久77777| 糖心vlog精品一区二区| 亚洲综合一二区| 秋霞网一区二区三区| 日本91福利区| 亚洲高清精品中出| 国产精品白丝一区二区三区| 国产在线播放91| 成人黄色网址| 国产亚洲精品综合一区91| 亚洲黄色小说网| 亚洲国产毛片aaaaa无费看| 韩国一区二区三区四区| 麻豆精品在线播放| avav在线看| 欧美午夜不卡| ijzzijzzij亚洲大全| 色悠久久久久综合先锋影音下载| 欧美另类交人妖| 成人免费视频国产免费麻豆| 欧美日韩一本到| 成人黄色三级视频| 色网综合在线观看| 99精品视频99| 亚洲 欧美综合在线网络| 我要看黄色一级片| 亚洲国产高清在线| 国产一区二区三区四区五区六区| 99精品一区二区| 日本成人黄色网| 91精品国产调教在线观看| 天天综合狠狠精品| 欧美在线观看视频一区| 日韩欧美精品在线不卡| 欧美久久精品一级c片| 欧美日韩亚洲一区二区三区四区| 伦理一区二区| 精品免费视频123区| 亚洲va久久久噜噜噜久久| 国产欧美一区二区三区四区| 电影久久久久久| 国产精品久久久久高潮| 777午夜精品电影免费看| 欧美丰满少妇xxxxx| 性欧美ⅴideo另类hd| 欧美国产乱视频| 99热99re6国产在线播放| 韩国欧美亚洲国产| 亚洲一二三四| 日本乱人伦a精品| 久久青青视频| 国产精品视频自拍| 白嫩亚洲一区二区三区| 6080yy精品一区二区三区| 福利在线免费视频| 国产91精品高潮白浆喷水| 亚洲午夜天堂| 国产精品日韩电影| 精品成人18| 国产精品久久久久久久久久久久| 欧美xnxx| 91久久久在线| 成人精品高清在线视频| 91精品国产自产在线老师啪 | 亚洲自拍偷拍区| 日韩精品免费视频一区二区三区| 国产精品18毛片一区二区| 超薄肉色丝袜脚交一区二区| 国产日韩欧美在线观看| 亚洲精品一区二区三区中文字幕 | 国产精品欧美亚洲| 欧美xfplay| 黄色美女网站在线观看| 亚洲成人网在线| 99久久精品免费看国产交换| 欧美视频一二三区| 精品久久无码中文字幕| 日韩经典一区二区三区| 欧美一级特黄aaaaaa| 欧美一二三在线| 日韩在线免费看| 亚洲激情自拍图| av资源网站在线观看| 欧美日韩第一页| 蜜桃精品在线| 99精品在线直播| 精品一级毛片| 福利在线一区二区| 综合激情婷婷| 国产免费成人在线| 国模娜娜一区二区三区| 麻豆国产精品一区| 91免费国产在线观看| 日本高清不卡免费| 色综合久久久久综合体桃花网| 国产影视一区二区| 精品一区二区三区四区| 亚洲区小说区图片区| 最新的欧美黄色| 激情aⅴ欧美一区二区欲海潮| 国产一区二中文字幕在线看| 全国精品免费看| 久久久福利视频| 亚洲乱码在线| 九热视频在线观看| 麻豆传媒一区二区三区| 人妻丰满熟妇av无码久久洗澡 | 9色在线视频网站| 欧美极品少妇xxxxx| 97蜜桃久久| 国产色视频一区| 精品欧美久久| 91九色在线观看视频| 国产91丝袜在线观看| 手机免费观看av| 色综合夜色一区| 午夜激情小视频| 久久久亚洲精品视频| 国产精品一区二区精品| 亚洲一区二区在| 奇米精品一区二区三区四区| 波多野结衣av在线免费观看| 亚洲第一久久影院| 好吊视频一二三区| 欧美成人免费va影院高清| 亚洲欧美一级| 亚洲图片欧洲图片日韩av| 久久一日本道色综合久久| 爽爽爽在线观看| 成人动漫一区二区三区| 私库av在线播放| 日韩一区二区高清| 午夜小视频在线观看| 亚洲一区二区三区乱码aⅴ蜜桃女| 围产精品久久久久久久| 国产免费观看高清视频| 懂色av一区二区三区蜜臀| 青青草原免费观看| 精品久久久久久久人人人人传媒| 久久电影网站| 国产美女久久久| 波多野结衣在线观看一区二区| 亚洲免费av一区二区三区| 欧美国产97人人爽人人喊| 日本三级一区二区三区| 中文字幕欧美视频在线| 另类一区二区三区| 国新精品乱码一区二区三区18| 伊人精品视频| 99久久国产精| 日本精品一级二级| 日本天堂在线观看| 97碰碰碰免费色视频| 亚洲精品亚洲人成在线观看| 国产精品97在线| 国产欧美精品一区二区色综合| 中文字幕在线视频第一页| 久久精品久久久久| 91综合精品国产丝袜长腿久久| 黄色片网址在线观看| 久久精品一区二区三区不卡| 又骚又黄的视频| 亚洲跨种族黑人xxx| 亚洲爱爱视频| 中文字幕第50页| 不卡视频免费播放| 欧美日韩在线视频播放| 久久精品99国产精品酒店日本 | 69久久夜色精品国产69蝌蚪网| 欧美欧美欧美| 91精品久久久久久久久青青| 午夜精品久久99蜜桃的功能介绍| 亚洲国产精品成人综合久久久| 在线观看免费成人| 婷婷国产在线| 久久久久久久电影一区| 日韩精品丝袜美腿| 亚洲一区二区三区观看| 亚洲成人av中文| a天堂中文在线88| 国产精品18毛片一区二区| 老**午夜毛片一区二区三区 | 亚洲aaa在线观看| 成人xxxxx|