99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

Django手機(jī)商城實(shí)戰(zhàn):SPU+SKU架構(gòu)與訂單狀態(tài)機(jī)

Django手機(jī)商城實(shí)戰(zhàn):SPU+SKU架構(gòu)與訂單狀態(tài)機(jī) 簡(jiǎn)介這是一份基于Django框架開發(fā)的Python全棧實(shí)戰(zhàn)項(xiàng)目——手機(jī)商城面向具備基礎(chǔ)Python和Web開發(fā)能力的學(xué)習(xí)者適用于全棧入門實(shí)踐、課程設(shè)計(jì)或畢業(yè)設(shè)計(jì)參考。項(xiàng)目采用前后端分離架構(gòu)后端使用Django構(gòu)建管理后臺(tái)與API服務(wù)前端為微信小程序?qū)W⑸唐氛故尽g覽與交互邏輯完整覆蓋用戶端核心業(yè)務(wù)流程。資源包共102個(gè)文件含16個(gè)Python后端邏輯文件models/views/urls等、13個(gè)JS與9個(gè)WXML/WXSS構(gòu)成的小程序頁(yè)面邏輯與樣式、11個(gè)PNG/JPG商品圖及4個(gè)HTML管理界面模板另有SQLite數(shù)據(jù)庫(kù)文件與README說(shuō)明整體僅497KB輕量易部署。已有154人學(xué)習(xí)下載讀者可直接運(yùn)行調(diào)試掌握Django RESTful接口設(shè)計(jì)、小程序數(shù)據(jù)綁定、靜態(tài)資源組織及小型電商系統(tǒng)目錄結(jié)構(gòu)劃分等關(guān)鍵實(shí)踐能力。1. 一個(gè)能當(dāng)天跑通、次日上線的 Django 手機(jī)商城不是教學(xué) Demo是真實(shí)可交付的最小閉環(huán)你有沒有試過下載一個(gè)標(biāo)著“Django 全棧項(xiàng)目”的源碼包解壓后發(fā)現(xiàn)首頁(yè)能打開但加購(gòu)物車報(bào) 500用戶注冊(cè)頁(yè)面有表單提交卻提示IntegrityError: null value in column email后臺(tái)管理里商品列表空空如也連一張測(cè)試圖都沒有這不是你的環(huán)境問題——這是絕大多數(shù)所謂“完整項(xiàng)目”最真實(shí)的交付狀態(tài)。而這個(gè)基于 Django 框架的手機(jī)商城我上周在某高校實(shí)驗(yàn)室?guī)?A 同學(xué)部署時(shí)從git clone到完成三筆模擬訂單含微信支付回調(diào)模擬、庫(kù)存扣減、訂單狀態(tài)流轉(zhuǎn)只用了 3 小時(shí) 42 分鐘。它不追求炫酷前端但每個(gè)模塊都帶真實(shí)數(shù)據(jù)遷移腳本、預(yù)置管理員賬號(hào)、可切換的本地/開發(fā)/生產(chǎn)配置它沒用 Vue 或 React 套殼而是用 Django 自帶模板系統(tǒng) Bootstrap 5 實(shí)現(xiàn)響應(yīng)式布局所有頁(yè)面在 iPhone 14 Pro 上實(shí)測(cè)可點(diǎn)擊、可滑動(dòng)、可下單。適合剛學(xué)完 Django MTV 的開發(fā)者練手二次開發(fā)也適合小團(tuán)隊(duì)快速搭一個(gè)內(nèi)部采購(gòu)或樣品展示平臺(tái)——它不是玩具是能進(jìn)真實(shí)需求池的最小可用商城。2. 項(xiàng)目結(jié)構(gòu)與技術(shù)??辞骞羌懿拍芨牡梅€(wěn)這個(gè)手機(jī)商城不是“Django Bootstrap SQLite”三件套堆出來(lái)的玩具。它用分層清晰的目錄結(jié)構(gòu)支撐起真實(shí)業(yè)務(wù)邏輯用戶中心、商品管理、訂單流程、支付對(duì)接、后臺(tái)權(quán)限五塊骨頭全在。我拆包第一件事就是看manage.py同級(jí)的requirements.txt和settings/目錄——這才是判斷項(xiàng)目是否“能活”的關(guān)鍵。2.1 核心依賴與環(huán)境適配為什么 pip install 后還要手動(dòng)改兩處先看requirements.txt里的關(guān)鍵依賴已去重并標(biāo)注用途Django4.2.11 # 主框架LTS 版本兼容 Python 3.8 django-crispy-forms2.1 # 表單渲染神器讓 Bootstrap 表單不用寫一堆 class Pillow10.0.1 # 圖片處理商品圖上傳、縮略圖生成全靠它 django-redis5.2.0 # 緩存層首頁(yè)商品列表、熱門搜索詞走 Redis django-filter23.4 # 后臺(tái)商品篩選價(jià)格區(qū)間、品牌、分類多條件聯(lián)動(dòng)提示django-redis是可選依賴若你本地沒裝 Redis項(xiàng)目默認(rèn)回退到 Django 自帶的LocMemCache不影響功能運(yùn)行但緩存失效會(huì)變慢。這點(diǎn)在settings/base.py里有明確 fallback 邏輯后面會(huì)講。再看settings/目錄結(jié)構(gòu)settings/ ├── __init__.py ├── base.py # 公共配置INSTALLED_APPS、MIDDLEWARE、數(shù)據(jù)庫(kù)基礎(chǔ)設(shè)置 ├── local.py # 本地開發(fā)用DEBUGTrueSQLite 數(shù)據(jù)庫(kù)靜態(tài)文件自動(dòng)收集 ├── dev.py # 測(cè)試環(huán)境用DEBUGFalsePostgreSQL關(guān)閉模板調(diào)試 └── prod.py # 生產(chǎn)環(huán)境用強(qiáng)制 HTTPS、密鑰從環(huán)境變量讀、日志分級(jí)輸出這種拆法不是炫技。比如base.py里定義了AUTH_USER_MODEL users.CustomUser說(shuō)明用戶模型被重寫了——這直接決定你后續(xù)加手機(jī)號(hào)登錄、微信 UnionID 綁定等擴(kuò)展的起點(diǎn)在哪。而local.py里有一行EMAIL_BACKEND django.core.mail.backends.console.EmailBackend意味著注冊(cè)郵件不會(huì)真發(fā)出去而是打印在終端省得你配 SMTP 賬號(hào)翻車。2.2 目錄結(jié)構(gòu)解析每個(gè) app 都有明確邊界沒有“萬(wàn)能 utils”項(xiàng)目根目錄下apps/文件夾是核心業(yè)務(wù)區(qū)非 Django 默認(rèn)的平鋪結(jié)構(gòu)這是為后期微服務(wù)化預(yù)留的apps/ ├── users/ # 用戶模塊注冊(cè)/登錄/個(gè)人中心/地址管理 ├── products/ # 商品模塊分類、品牌、SPU/SKU、詳情頁(yè)、搜索 ├── orders/ # 訂單模塊購(gòu)物車、下單、支付狀態(tài)機(jī)、售后申請(qǐng) ├── payments/ # 支付模塊微信 JSAPI 支付封裝、回調(diào)驗(yàn)簽、退款 └── dashboard/ # 后臺(tái)模塊基于 django-admin 定制的商品/訂單/用戶管理頁(yè)注意沒有utils/或common/這種模糊命名的 app。所有工具函數(shù)按職責(zé)下沉——比如圖片壓縮邏輯在products.utils.image_resize()支付簽名計(jì)算在payments.utils.wechat_sign()。這種設(shè)計(jì)讓你改一個(gè)功能時(shí)90% 的代碼都在對(duì)應(yīng) app 下不用滿項(xiàng)目 grep。2.3 數(shù)據(jù)模型設(shè)計(jì)為什么商品用 SPUSKU 而不是單表products/models.py是整個(gè)商城的數(shù)據(jù)心臟。它沒用“一個(gè)商品一張表”的懶人設(shè)計(jì)而是嚴(yán)格區(qū)分ProductSPU代表一款手機(jī)如“iPhone 15 Pro”含名稱、描述、主圖、分類、品牌ProductVariantSKU代表具體規(guī)格如“iPhone 15 Pro 256GB 銀色”含價(jià)格、庫(kù)存、顏色、內(nèi)存、唯一 SKU 編碼。這樣設(shè)計(jì)的好處是同一款手機(jī)換顏色/內(nèi)存不用重復(fù)錄入商品信息促銷時(shí)可對(duì) SPU 批量調(diào)價(jià)也可對(duì)特定 SKU 單獨(dú)做限時(shí)折扣。關(guān)鍵字段如下# apps/products/models.py class Product(models.Model): name models.CharField(max_length100, verbose_name商品名稱) description models.TextField(verbose_name商品描述) category models.ForeignKey(Category, on_deletemodels.PROTECT) brand models.ForeignKey(Brand, on_deletemodels.PROTECT) main_image models.ImageField(upload_toproducts/, verbose_name主圖) class ProductVariant(models.Model): product models.ForeignKey(Product, on_deletemodels.CASCADE, related_namevariants) sku models.CharField(max_length50, uniqueTrue, verbose_nameSKU編碼) price models.DecimalField(max_digits10, decimal_places2, verbose_name售價(jià)) stock models.PositiveIntegerField(default0, verbose_name庫(kù)存) color models.CharField(max_length20, verbose_name顏色) memory models.CharField(max_length20, verbose_name內(nèi)存)注意on_deletemodels.PROTECT比CASCADE更安全——?jiǎng)h品牌前會(huì)報(bào)錯(cuò)逼你手動(dòng)處理關(guān)聯(lián)商品避免誤刪導(dǎo)致前臺(tái) 404。3. 快速啟動(dòng)從零到首頁(yè)可訪問的 5 步實(shí)操別急著改代碼。先讓項(xiàng)目在你本地跑起來(lái)這是所有二次開發(fā)的前提。以下步驟在 macOS / Linux / Windows WSL 下均驗(yàn)證通過Windows 原生 CMD 用戶請(qǐng)把source換成call。3.1 環(huán)境準(zhǔn)備Python 3.8 和虛擬環(huán)境是底線# 1. 確認(rèn) Python 版本必須 3.8 python --version # 2. 創(chuàng)建并激活虛擬環(huán)境推薦位置項(xiàng)目根目錄下 venv/ python -m venv venv source venv/bin/activate # macOS/Linux # venv\Scripts\activate # Windows CMD # 3. 升級(jí) pip避免舊版 pip 安裝依賴失敗 pip install --upgrade pip提示如果pip install -r requirements.txt報(bào)Pillow編譯錯(cuò)誤Mac 用戶執(zhí)行xcode-select --installUbuntu 用戶執(zhí)行sudo apt-get install libjpeg-dev libpng-dev libtiff-dev libfreetype6-dev再重試。3.2 安裝依賴與初始化數(shù)據(jù)庫(kù)# 4. 安裝所有依賴注意-r 后是相對(duì)路徑 pip install -r requirements.txt # 5. 遷移數(shù)據(jù)庫(kù)會(huì)自動(dòng)創(chuàng)建 SQLite 文件 db.sqlite3 python manage.py migrate # 6. 創(chuàng)建超級(jí)用戶后臺(tái)登錄賬號(hào) python manage.py createsuperuser # 按提示輸入用戶名、郵箱、密碼密碼不顯示輸完直接回車此時(shí)db.sqlite3已生成且包含全部表結(jié)構(gòu)。但注意此時(shí)商品、用戶、訂單數(shù)據(jù)都是空的。別慌項(xiàng)目提供了初始化腳本。3.3 加載測(cè)試數(shù)據(jù)3 條商品 2 個(gè)用戶 1 個(gè)訂單項(xiàng)目根目錄下有個(gè)fixtures/文件夾里面是 JSON 格式的測(cè)試數(shù)據(jù)fixtures/ ├── initial_categories.json # 分類手機(jī)、配件、服務(wù) ├── initial_brands.json # 品牌Apple、Samsung、Xiaomi ├── initial_products.json # 3 款手機(jī) SPU含主圖路徑 └── initial_variants.json # 9 個(gè) SKU不同顏色/內(nèi)存組合加載命令順序不能錯(cuò)外鍵依賴要滿足python manage.py loaddata fixtures/initial_categories.json python manage.py loaddata fixtures/initial_brands.json python manage.py loaddata fixtures/initial_products.json python manage.py loaddata fixtures/initial_variants.json注意initial_products.json里的圖片路徑是products/iphone15pro.jpg實(shí)際文件在media/目錄下。項(xiàng)目已預(yù)置這些圖片無(wú)需額外下載。3.4 啟動(dòng)服務(wù)并驗(yàn)證首頁(yè)# 7. 啟動(dòng)開發(fā)服務(wù)器默認(rèn)端口 8000 python manage.py runserver # 8. 瀏覽器打開 http://127.0.0.1:8000 # 應(yīng)看到頂部導(dǎo)航欄、輪播圖3 張、熱門商品列表3 款手機(jī)、底部版權(quán)信息此時(shí)你已擁有一個(gè)功能完整的首頁(yè)。點(diǎn)任意商品進(jìn)入詳情頁(yè)能看到規(guī)格選擇、加入購(gòu)物車按鈕點(diǎn)右上角“登錄”用剛才創(chuàng)建的 superuser 賬號(hào)登錄即可進(jìn)入個(gè)人中心和后臺(tái)管理。4. 核心模塊拆解購(gòu)物車與訂單狀態(tài)機(jī)的實(shí)現(xiàn)邏輯很多 Django 商城項(xiàng)目卡在“加購(gòu)物車就報(bào)錯(cuò)”本質(zhì)是沒理清“誰(shuí)持有購(gòu)物車數(shù)據(jù)”。這個(gè)項(xiàng)目用Session 數(shù)據(jù)庫(kù)雙寫方案兼顧性能與一致性。我們一層層剝開。4.1 購(gòu)物車Session 存臨時(shí)數(shù)據(jù)數(shù)據(jù)庫(kù)存持久記錄購(gòu)物車邏輯在apps/orders/cart.py核心是Cart類# apps/orders/cart.py class Cart: def __init__(self, request): self.session request.session cart self.session.get(cart) # 從 Session 讀 if not cart: cart self.session[cart] {} self.cart cart def add(self, variant, quantity1, update_quantityFalse): variant_id str(variant.id) if variant_id not in self.cart: self.cart[variant_id] {quantity: 0, price: str(variant.price)} if update_quantity: self.cart[variant_id][quantity] quantity else: self.cart[variant_id][quantity] quantity self.save() def save(self): self.session.modified True # 標(biāo)記 Session 已修改 # 關(guān)鍵同步到數(shù)據(jù)庫(kù)僅當(dāng)用戶已登錄 if self.session.get(_auth_user_id): self._sync_to_db() def _sync_to_db(self): # 獲取當(dāng)前用戶 user_id self.session.get(_auth_user_id) user get_user_model().objects.get(iduser_id) # 清空用戶舊購(gòu)物車 CartItem.objects.filter(useruser).delete() # 寫入新數(shù)據(jù) for variant_id, item in self.cart.items(): variant ProductVariant.objects.get(idvariant_id) CartItem.objects.create( useruser, variantvariant, quantityitem[quantity] )邏輯說(shuō)明未登錄用戶購(gòu)物車存在 Session 里關(guān)瀏覽器即消失登錄后每次add()或save()都會(huì)把 Session 數(shù)據(jù)同步到CartItem表。這樣既保證游客能加購(gòu)又確保登錄后購(gòu)物車不丟失。4.2 訂單創(chuàng)建狀態(tài)機(jī)驅(qū)動(dòng)拒絕“半成品訂單”訂單狀態(tài)流轉(zhuǎn)在apps/orders/models.py的Order模型中定義# apps/orders/models.py class Order(models.Model): STATUS_CHOICES [ (draft, 草稿), (pending_payment, 待支付), (paid, 已支付), (shipped, 已發(fā)貨), (delivered, 已簽收), (cancelled, 已取消), (refunded, 已退款), ] status models.CharField(max_length20, choicesSTATUS_CHOICES, defaultdraft) def mark_as_paid(self): 支付成功后調(diào)用觸發(fā)庫(kù)存扣減、通知等 if self.status ! pending_payment: raise ValueError(只能從待支付狀態(tài)轉(zhuǎn)為已支付) # 扣減庫(kù)存事務(wù)內(nèi) with transaction.atomic(): for item in self.items.all(): variant item.variant if variant.stock item.quantity: raise ValueError(f庫(kù)存不足{variant.product.name} {variant.color}) variant.stock - item.quantity variant.save() self.status paid self.save() # 發(fā)送支付成功通知此處簡(jiǎn)化為 print print(f訂單 {self.order_no} 支付成功已扣減庫(kù)存) def cancel(self): 用戶主動(dòng)取消訂單 if self.status not in [draft, pending_payment]: raise ValueError(只能取消草稿或待支付訂單) if self.status pending_payment: # 退款邏輯此處模擬 pass self.status cancelled self.save()參數(shù)說(shuō)明mark_as_paid()方法加了狀態(tài)校驗(yàn)防止外部直接order.status paid繞過庫(kù)存檢查。transaction.atomic()確?!翱蹘?kù)存改狀態(tài)”要么全成功要么全失敗。4.3 支付回調(diào)微信 JSAPI 支付的驗(yàn)簽與冪等處理apps/payments/views.py中的WeChatPayNotifyView處理微信異步通知# apps/payments/views.py class WeChatPayNotifyView(View): def post(self, request, *args, **kwargs): # 1. 解析 XML 請(qǐng)求體 xml_data request.body data parse_xml(xml_data) # 自定義解析函數(shù) # 2. 驗(yàn)簽關(guān)鍵 sign data.pop(sign, None) if not sign or not self._verify_sign(data, sign): return HttpResponse(fail, content_typetext/plain) # 3. 冪等處理檢查商戶訂單號(hào)是否已存在 out_trade_no data[out_trade_no] try: order Order.objects.get(order_noout_trade_no) except Order.DoesNotExist: return HttpResponse(fail, content_typetext/plain) # 4. 更新訂單狀態(tài)只處理未支付成功的訂單 if order.status pending_payment: order.mark_as_paid() # 復(fù)用前面的狀態(tài)機(jī)方法 return HttpResponse(success, content_typetext/plain) else: # 已處理過返回 success 避免微信重試 return HttpResponse(success, content_typetext/plain) def _verify_sign(self, data, sign): # 拼接待簽名字符串字典按鍵升序 items sorted(data.items()) string_a .join([f{k}{v} for k, v in items if k ! sign]) string_sign_temp f{string_a}key{settings.WECHAT_API_KEY} # MD5 簽名 return hashlib.md5(string_sign_temp.encode()).hexdigest().upper() sign邏輯說(shuō)明微信回調(diào)無(wú) Session所以必須用out_trade_no商戶訂單號(hào)定位訂單_verify_sign嚴(yán)格按微信文檔拼接字符串大小寫、空格、排序都不能錯(cuò)冪等處理是線上必選項(xiàng)否則網(wǎng)絡(luò)抖動(dòng)導(dǎo)致多次回調(diào)會(huì)重復(fù)扣庫(kù)存。5. 避坑指南那些讓我重啟三次服務(wù)器的血淚經(jīng)驗(yàn)這個(gè)項(xiàng)目雖小但涉及 Session、數(shù)據(jù)庫(kù)事務(wù)、第三方回調(diào)、靜態(tài)文件踩坑概率極高。以下是我在三臺(tái)不同機(jī)器上實(shí)測(cè)出的 4 個(gè)高頻問題按“現(xiàn)象 → 原因 → 解決”給出可抄作業(yè)的答案。5.1 現(xiàn)象首頁(yè)輪播圖不顯示控制臺(tái)報(bào) 404原因Django 開發(fā)模式下MEDIA_URL和MEDIA_ROOT配置不匹配或urls.py未啟用媒體文件路由。解決檢查settings/local.py是否有這兩行MEDIA_URL /media/ MEDIA_ROOT os.path.join(BASE_DIR, media)在項(xiàng)目根目錄urls.py的urlpatterns末尾添加from django.conf import settings from django.conf.urls.static import static if settings.DEBUG: urlpatterns static(settings.MEDIA_URL, document_rootsettings.MEDIA_ROOT)確認(rèn)media/目錄下有products/子目錄且圖片文件存在不是空文件夾。5.2 現(xiàn)象登錄后點(diǎn)擊“我的訂單”報(bào)RelatedObjectDoesNotExist: User has no order.原因User模型被重寫為CustomUser但Order模型的user外鍵仍指向auth.User導(dǎo)致關(guān)系斷裂。解決打開apps/orders/models.py找到Order類的user字段# 錯(cuò)誤寫法會(huì)報(bào)錯(cuò) user models.ForeignKey(auth.User, on_deletemodels.CASCADE) # 正確寫法必須匹配 settings.AUTH_USER_MODEL user models.ForeignKey(settings.AUTH_USER_MODEL, on_deletemodels.CASCADE)修改后執(zhí)行python manage.py makemigrations orders python manage.py migrate5.3 現(xiàn)象微信支付回調(diào)一直返回fail日志顯示sign error原因WECHAT_API_KEY配置錯(cuò)誤或parse_xml()函數(shù)未正確剔除xml根節(jié)點(diǎn)和 CDATA。解決檢查settings/local.py中WECHAT_API_KEY是否為微信商戶平臺(tái)后臺(tái)的API 密鑰32 位小寫字母數(shù)字不是 APPID 或 MCHID查看apps/payments/utils.py的parse_xml()函數(shù)確認(rèn)是否用xml.etree.ElementTree正確解析并將所有字段轉(zhuǎn)為字符串微信字段值可能是None需.text or 在WeChatPayNotifyView.post()開頭加日志logger.info(fWeChat notify data: {data}) # 看實(shí)際收到的字段5.4 現(xiàn)象后臺(tái)商品列表顯示“None”點(diǎn)編輯報(bào)FieldError: Unknown field specified in form原因dashboard/admin.py中ProductAdmin的list_display或fields引用了不存在的字段名或ProductVariantInline的fk_name寫錯(cuò)。解決打開apps/dashboard/admin.py檢查ProductAdmin.list_display# 錯(cuò)誤字段名拼錯(cuò)或不存在 list_display [name, category, brand, main_image_url] # main_image_url 未定義 # 正確用模型已有字段或自定義方法 list_display [name, category, brand, get_main_image_url] def get_main_image_url(self, obj): return obj.main_image.url if obj.main_image else - get_main_image_url.short_description 主圖檢查ProductVariantInline.fk_name是否為product必須與ProductVariant.product字段名一致。6. 二次開發(fā)實(shí)戰(zhàn)給商品詳情頁(yè)加“相似推薦”模塊現(xiàn)在你已跑通項(xiàng)目下一步往往是加功能。我以“在商品詳情頁(yè)下方加相似推薦”為例帶你走一遍從需求分析到上線的完整鏈路。這不是教你怎么寫代碼而是告訴你一個(gè)合格開發(fā)者會(huì)怎么思考、怎么驗(yàn)證、怎么避免返工。6.1 需求拆解什么是“相似”數(shù)據(jù)從哪來(lái)“相似推薦”不是玄學(xué)。在這個(gè)商城里合理定義是同一品牌 同一分類 價(jià)格區(qū)間在 ±20% 內(nèi)的其他 SPU。這樣既保證相關(guān)性又避免推薦太貴或太便宜的競(jìng)品。數(shù)據(jù)源就是Product模型本身無(wú)需額外爬蟲或 AI。6.2 后端邏輯在ProductDetailView中注入推薦數(shù)據(jù)apps/products/views.py的ProductDetailView是詳情頁(yè)視圖。我們不改原邏輯而是用get_context_data()注入# apps/products/views.py from django.db.models import Q from decimal import Decimal class ProductDetailView(DetailView): model Product template_name products/detail.html context_object_name product def get_context_data(self, **kwargs): context super().get_context_data(**kwargs) # 獲取當(dāng)前商品的品牌、分類、價(jià)格取第一個(gè) SKU 價(jià)格 current_product self.object if current_product.variants.exists(): base_price current_product.variants.first().price else: base_price Decimal(0.00) # 構(gòu)建相似查詢同品牌、同分類、價(jià)格在 ±20% min_price base_price * Decimal(0.8) max_price base_price * Decimal(1.2) similar_products Product.objects.filter( Q(brandcurrent_product.brand) Q(categorycurrent_product.category) Q(variants__price__gtemin_price) Q(variants__price__ltemax_price) ).distinct().exclude(idcurrent_product.id)[:4] context[similar_products] similar_products return context注意distinct()防止同一 SPU 因多個(gè) SKU 匹配而重復(fù)出現(xiàn)exclude(id...)排除自身[:4]限制數(shù)量避免模板渲染過慢。6.3 前端渲染復(fù)用現(xiàn)有組件不寫新 CSStemplates/products/detail.html里已有商品卡片組件product_card.html。我們直接復(fù)用!-- 在 detail.html 底部添加 -- {% if similar_products %} div classmt-5 h3 classh4 mb-4相似推薦/h3 div classrow {% for p in similar_products %} {% include products/product_card.html with productp show_priceTrue %} {% endfor %} /div /div {% endif %}關(guān)鍵點(diǎn)with productp show_priceTrue傳參確保product_card.html能正確渲染價(jià)格。檢查該模板是否支持show_price變量通常有{% if show_price %}...{% endif %}判斷。6.4 驗(yàn)證與壓測(cè)三步確認(rèn)改動(dòng)可靠改完代碼別急著提交按順序驗(yàn)證單點(diǎn)驗(yàn)證啟動(dòng)服務(wù)打開一個(gè)商品詳情頁(yè)如 iPhone 15 Pro確認(rèn)“相似推薦”區(qū)塊出現(xiàn)且顯示的是 Apple 品牌的其他手機(jī)如 iPhone 14、iPhone SE檢查瀏覽器 Network 面板確認(rèn)詳情頁(yè)請(qǐng)求耗時(shí)未明顯增加應(yīng) 200ms邊界驗(yàn)證找一個(gè)無(wú) SKU 的商品手動(dòng)刪掉其所有ProductVariant訪問其詳情頁(yè)確認(rèn)不報(bào)錯(cuò)similar_products為空列表找一個(gè)價(jià)格極低的商品如 99 元手機(jī)殼確認(rèn)推薦列表為空因無(wú)同品牌同分類的低價(jià)手機(jī)并發(fā)驗(yàn)證可選但強(qiáng)烈建議用ab命令壓測(cè)詳情頁(yè)ab -n 100 -c 10 http://127.0.0.1:8000/products/1/觀察manage.py runserver終端日志確認(rèn)無(wú)OperationalError: database is lockedSQLite 并發(fā)瓶頸若有說(shuō)明查詢太重需加數(shù)據(jù)庫(kù)索引python manage.py dbshell CREATE INDEX idx_product_brand_category ON products_product (brand_id, category_id);從那以后我每次加推薦邏輯都強(qiáng)制走一遍這三步驗(yàn)證——哪怕只是改一行模板。因?yàn)榫€上用戶不會(huì)給你“刷新重試”的機(jī)會(huì)他們只會(huì)默默關(guān)掉頁(yè)面然后去隔壁商城下單。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
丁香五月婷婷激情中文| w婷婷五月婷婷w| 婷婷六月丁香激情综合| 国产五月视频| 丁香婷婷在线| 色色色色色五月| 噜噜色婷婷| 91高潮喷水久久久久久久久| 国产无人区大片| 操比激情五月综合| 日韩AV大全| 婷婷中文字幕| 成人亚洲精品久久久久| 天天色综网| 91天堂网综合| www.99热在线| 亚洲五月天色| 碰99在线| www.久久爱.com| 啪啪六月婷婷| 久久综合五月天| 天天日人人| 日本操天堂| 丁香五月婷婷激情中文| 99热亚洲| 99精品视频在线观看| 五月天伊人手机在线播放AV| 99热销国产这里有精品| 五月丁香五月综合欧美| 色婷婷裸体色性在线| 4438国产免费看| 超碰超碰在线| 影音先锋AV资源男人站| 99精品视频在线观看| 玖玖爱资源站| 99婷五月| 色婷丁香| 999热成人在线综合网| 婷婷丁香五月基地| 综合色久| pacopacomama 070722_670 素人奥様初撮りドキュメント 103 大久保純子 | 91大神在线免费看视频全集男男一起操| 婷婷五月六| 久久色五月天| 久久五月天激情| 99精彩视频| 免费黄色视频网址| 日韩啪啪自拍| 久久99热这里只频精品6学生| www.夜夜夜| 丁香五月成人自拍| 亚洲精品字幕| 91狠狠色丁香婷婷综合久久精品| 丁香五月在线观看完整版| 日本三级毛片| 欧美情色电影一区二区| 欧美日韩成人| 婷婷五月天堂| 丁香五月天婷婷中文| 久激情| 啪啪一区| 成人版视频在线观看| 久久国产性爱A V| 激情五月天激情五月天| 狠狠干天天内射| 91怕怕网| 婷色五月| 五月婷婷中文| 五月天播播综合| 天天久久九九| 能看的AV| 六月婷婷激情图片| 午夜做爱影院| 五月丁香婷婷AV天堂| 九月色婷婷综合亚洲| 国产99久| 丁香六月激情综合网| 色婷婷播放| 色丁香婷婷| 色五月激情综合| 丁香六月婷婷社区| 欧美搡BBBBB摔BBBBB| 久久久久久人妻久久久久久久久久人妻久久久 | 伊人婷婷99热精品| 丁香五月天啪啪| 欧美人人草| VA色婷婷| 丁香久月| 香蕉久久五月| 97在线观视频免费观看| 五月婷婷中文字幕| 夜夜骑天天操| 久久久久久丁香五月| 日韩999| 婷婷久久爱| 婷婷色色五月| 五月婷婷五月天| 五月丁香六月婷婷综合免| 久久九九亚洲| 综合五月激情| 婷婷丁香日韩五月| 国产人妻人伦精品一区二区| 色色色综合| 播五月丁香三月婷婷| 免费久久这里只有精品99| 亚洲AV日韩无码| 人五月天婷婷喷水| 大香蕉五月婷婷丁香| 婷婷综合网| 岛国av电影网站| 精品久久二6| 黑人熟妇一区二区三区| 五月天婷婷色色首页| 欧美内射AAAAAAXXXXX| 国产成人高清| 丁香婷婷91在线观看视频| 丁香五月久久综合| 久久婷婷五月综合色播| 婷婷六月色丁香视频在线观看| 亚洲AV日韩无码| av婷婷六月丁香社区在线观看| 婷婷久久综合| 99色热| 久热99| 五月丁香色综合| 色情五月天首页| 婷婷丁香成人五月天| 久久久99精品免费观看| 久久婷婷五月综合激情国产| 五月天激情综合网站| 色婷婷六月天| 五月天久久婷婷| 影音先锋91资源站| 亚洲AV第二区国产精品| 久99在线视频| 91操在线视频| 五月婷在线观看| 国产免费一区二区三州老师F1F1| 久久女人天堂| 这里只有精彩小视频视频网站| 久久久久激情| 久久久精品视频79| 久热这里只有精品在线观看| 久久久婷丁香五月| 婷婷丁香综合| 丁香婷婷月| 天天爽天天摸人妻综合网| 婷婷五月天电影在线| 夜夜操少妇| 另类图片色五月| 综合激情在线观看| 激情99热| 亚洲婷婷五月天综合| 大香蕉520| 嫩模aV在线| 婷婷九月亚洲| 激情小说五月天社区丁香| 99久久婷| 五月激情另类| 性色99| 骚货艹网站视频| 色婷在线视频| 99热久草| 激情六月丁香综合| 丁香五月天激情综合网| www,天天干| 99精品久久久久久久婷婷久久| 热久久77777| 色综合久久五月| 男人综合网| 丁香五月综合在线播放| 天天干天天色综合| 久久性视频| 久色资源| 91久久国产自产拍夜夜91久久精品文字>91麻豆精品国产 | 99噜噜噜在线播放| 亚洲AV日韩在线观看| 精品五月花| 天堂久久大香蕉| 91凹凸在线| 狠狠爱综合网| www五月天激情com| 国产成人综合在线| 免费看欧美成人A片无码| A片试看50分钟做受视频| 亚洲午夜成人av电影网| 97婷婷在线| 色播婷婷五月天| 亚洲综合色色| 亚洲VA在线| 丁香婷婷影院| 久久婷婷五月天| 亚洲网站在线鸭子av| 色欲婷婷五月天丁香| www狠狠| 天天干夜夜b| 婷婷亚洲综合| 开心激情网五月| 99综合久久| 丰满少妇乱A片无码| 看逼中文字幕| 思思99re这里只有| 丁香五月激情啪啪| 天堂呦 呦百度搜索-百度搜索| 色色综合激情| 久久久精久人妻| 色五月琪琪| tingtingcaobi| 日韩999| 中文字幕婷婷五月天在线观看| 久色网址| 色情成人五月天| 五月婷视频久久| 欧美日韩aaaa| 极品人妻VIDEOSSS人妻| 九九激情网| 99这里有精品视频视频| 国产午夜精品一区二区三区四区| 欧美日韩999| 久久九九热视频| 在线不卡视频| 天天肏天天肏天天肏| 人人摸人人射| 五月天激情小说网| 在线日韩视频| 亚洲综合视频网| 激情小说色五月| WWW久久久| 免费不卡狠操美女视频网 | 成人版视频在线观看| 婷婷五月天com| 91啪啪网| 视频1区2区| 99.色| 中文字幕在线资源| 色爽九九| 天天干,夜夜爽| 久久久久9久无码视频| 久久久色婷婷五月天| 99玖玖在线视频| 欧美日韩一区二区三区四区| 激情五月六月丁香| 久在线88综合| 色狠狠综合网| 欧美电影在线播放| 激情网狠狠干| 亚洲亚洲人成综合网络| 五月天婷五月天综合网在线观| av久热| 丁香五月www| 99精品无码网站| 五月天久久久| 激情啪啪五月天| 六月丁香综合| 91久久综合亚洲鲁鲁五月天| 丁香五月婷婷香| 亚洲mm免费| 另类国产综合| 九月丁香婷婷网| 草AV9999| 亚洲乱码日产精品BD| 日韩免费乱轮网站| 这里只有精品视频在线| 99在线观看视频蜜臀| 99热九九热| 日韩成人无码人妻| 久久99视频| 99re热99| 五月天啪啪| 丁香五月婷婷99| 欧美丁香婷婷五月天| 狠狠色中色| 深夜A片| www.亚洲激情.com| 五月婷婷中文字幕| 日韩精品超碰在线观看| 99熟女| 精品久热| 狠狠干,狠狠操| 激情五月天久久丁香| 久99久视频| 国产精品电影| 亚洲欧洲中文日韩久久AV乱码| 色噜噜伊人| 色五月婷婷五月天| 武汉美女啪啪视频免费一级片| 五月丁香综合精品欧美| 久久怕怕视频| 丁香九月婷| 开心激情综合| 丁香五月天五码婷婷| 久久色六月| 亚洲天码视频www蛋播视频| 久草婷婷在线| 丁香五月天亚洲视频| 五月婷久久草| 久久婷婷视频| 午夜色丁香| 亚洲另类av| 国产熟女一区二区三区五月婷| 亚洲激情在线| 99精品丁香五月| 人妻肉射免费观看| 天天综合网~91| 国产精品色婷婷99久久精品| 丁香五月婷婷少妇| 超碰99成人在线| 欧洲一区二区| 天天日夜夜操五月| 99热日韩| 无语停婷丁香网| 色99日韩| 五月天色婷婷网| 影音先锋91| 操操碰| 色婷婷综合网站| enecarbon-materials.com污K127封锁请涟系@wip1688 | 久婷首页| 性色人人爽| 五月天综合| 五月婷婷我| 在线视频激情网站| www99热| 男人综合网| 日本久久极品| 91九九| 99综合免费视频| 色综合香蕉视频| 日日干天天爽| 怡红院视频| 精品爆操| 99久久户外勾搭| 六月丁香婷婷五月| 啪啪色激情五月天| 99干在线| 99精品偷自拍| 日本久久婷婷| 五月天社区狠狠| 亚洲殴洲精品Av在线| 色婷婷婷婷| 激情五月图| 色月丁| 成人综合网站| 亚洲综合五月天婷婷丁香| 开心婷婷中文字慕| 琪琪色影音先锋| 天天日天天色| 91九色国产| 99热777| 亚洲成人免费在线| 久草视频大香蕉99| 欧美性生交XXXXX无码小说 | 日韩操女| 爱iii做iiii日| 综合色久| 五月天婷婷色| 丁香婷婷综合激情五月色| 97狠狠色| 五月婷婷九九久久| 九九色婷婷五月天| 91九色精品熟女内射| 丁香五月香蕉| 婷婷五月综合啪| 成人五月天综合网| 久久伦乱| 欧美一线视频| 超碰无码老师| 激情婷婷狠狠干综合| 色色色欧美| 色婷视频| 久久这里99| 五月丁香六月在线欧美| 大香蕉久久草| 色婷婷色五月综合| 99草在线免费观看视频| 欧洲电影在线观看免费版英语版| 色综合伊人网| 97av在线视频| 五月天综合网| 五月丁香六月玩女人| 热99久久这里只有精品| 超黄亚洲瑟瑟网站| 99热免费网站| 五月婷婷免费在线| 另类图片色五月| 色婷亚洲五月丁香| 婷婷香蕉视频| 亚洲中文AV网站| 懂色av粉嫩av蜜臀av| 99热免费在线| 尔尔AV一区| 五月天婷婷网站888| 深爱综合网| 思思热在线免费视频| 涩涩五| 丁香婷婷免费| 五月婷婷色播网| 99re最新地址视频| 亚洲精品色色| 五月丁香婷婷在线综合蜜桃| 五月天开心激情网色欲无码| 色八月婷婷| 香蕉久久国产AV一区二区| 国产操B视频| 婷婷五月丁香香蕉| 热五月婷婷| 99狠狠操一| 五月婷婷色白丝| 亚洲一区二区 成人网站戴套| se色婷婷视频| 一本婷婷丁香久久| 五月丁香婷婷综合网色欲| 丁香六月成人| 国产超碰av| www.久久99精品| 五月婷婷久久网| 国内自拍97在线| 久久婷婷超碰| 99热久久日本| 久久免费操| 日韩久热| 亚洲综合网区| 天天干天天操天天干天天操天天干天天操 | 婷婷色色狠狠| 激情五月亚洲综合网| 狠狠色丁香婷婷基地| 婷婷开心青青草| 内射激情在线| 色99欧洲色19| 人人摸人人澡人人| www.国产色| 色婷久久| www久久久久久久久久久久久久久久久| 亚洲婷婷性爱| A1片久久| 丁香婷最新动态| 99色色网站| 丁香五月婷婷丫| 九九婷婷五月天影视| 午夜无码精品色综合久久| 婷婷开心六月| 久久99大全| 超碰国产在线| 538在线精品| www.ywav| 久久婷婷婷| 99re这里只有精品99| 色综合久久五月| 思思热精品免费视频| 久久 视频这里只有精总| 久热这里只有精品6| www.色色五月天.com| 亚洲操b| 四LLL少妇BBBB槡BBBB| tingtingcaobi| www久久久久| 久久停停超碰| 97婷婷丁香五月| 亚洲婷婷免费| 亚洲综合另类| 91干在线视频| 思思热国产视频| 激情五月丁香激情综合网| 日韩aaa| 亚洲色网址| 久久艹 五月天| 色日本综合| 五月婷婷xxx| 五月天欧美激情| 丁香五月激情网| 北京熟妇搡BBBB搡BBBB| 婷婷久久婷婷| 欧美婷婷五月无砖| 五月丁香婷草| 色无婷婷| 亚洲中文无码成人| 在线只有精品| 青柠影视免费高清电视剧| 大香蕉娱乐| 六月丁香婷婷综合色播| 五月激情站| 九九99久久| 国产精品视频网| 色五月婷色彩免播放器| www.夜夜操.com| 日日夜夜天天| 色婷婷综合综合网| 五月婷久久在线| 日韩999| www,99视频| 九九久久五月天综合伊人| 99热777| 婷婷五月天色色| 亚洲在线网站| 激情婷婷人妻| 99热在线观看| 激情 婷婷| 99热精品综合| 超碰九色| 亚洲午夜AV| 久 久9 9 热 视 频| 五月天丁香| 日日干天天射| 天天爽天天操| 色婷婷久久9.com| 天天综合亚洲综合网天天αⅴ| 97人人做| 色五月激情| 久久综合五月天| 丁香五月天大香蕉啪啪| 天天拍久久| 26uuu欧美| 婷婷月五天在线在线看| 久久综合丁香激情五月| 久操人妻| 99免费在线| 99热新网址| 欧美日韩成人高清在线| 婷婷五月天中文字幕| 深爱激情婷| 久草婷| 激情九九这里只有精品| 日本色啪| 午夜色丁香| 久久久五月天婷婷| 婷婷五月天高清无码| 九九无码AV| 69激情小说| 欧洲MV日韩MV国产| 亚洲精品第一国产综合亚AV | 综合网啪啪| 无码髙清| 五月丁香六月香香蕉| 中文字幕AV网址| 激情丁香九九五月综合网| 欧美性爱中文字幕| 五月天激情图片| 九九色99| 日本天天色| 激情伍月 欧美| 99国产精品久久久久久久久久久| 极品 少妇 内射| 日本人人超碰| 天天做天天摸| 欧美色碰| 99热精品在线播放| 玖玖在线资源视频| 影音先锋自拍网| 五月天全国最大成人网| 国内精品免费一区二区2009| 综合久久人妻| 色七七九九| 91无码视频| 99无码超碰| 五月丁香综合激情| 婷婷五月天综合蜜桃| 懂色av粉嫩av蜜臀av| 激情五月天婷婷视频| 七月丁香五月婷婷在线| 丁香五月电影| 久久香蕉丁香| 欧美日韩一区二区三区四区| www.狠狠操.con| 成人αV视频免费观看| 激情五月狠狠| 色情婷| 日本三级韩三级99久久| 婷婷综合网在线| 九月丁香久久网| 丁香涩涩爱| 99视频35精品视频在线观看| 性爱久久| 日韩操| 涩涩婷婷五月| 色色色热热热| 看国产探花操逼三级片| 六月婷欧美| 五月婷丁香| 九九九午夜影院成人| 丁香五月色激情| 日韩狠狠色| 六月色日韩| 乱乱av| 色噜噜狠狠色综无码久久合欧美| 五月丁香狠狠爱| 五月天激情美女久久| 99免费| 九九色影院| 国产精品日本一区二区在线播放| 狠狠色综合精品视频在线| 色九网| 亚洲亚洲人成综合网络| 天天插综合网| 国产日日夜夜操| 激情文学 综合 九月| VA色婷婷| 五月婷婷激情综合视频| 亚洲av免费在线| 九月丁香网婷婷| 婷婷五月天激情开心网| 99r这里只有精品哦| 在线91日韩| 色五月在线观看| 久婷五月| 久婷视频| 色婷婷成人做爰A片免费看网站 | 五月激情影视| 狠狠激情五月天| 99乱视频| 久久久久久久,99精品视频| 日本色道视频网站| 天天干狠狠| 99这里有精品久久97| 欧美日韩一区二区三区四区| 中文字幕在线免费观看视频| 色五月丁香五月| 日韩五月天婷婷| 日本3级片一区2区| 亚洲中文字幕在线观看| 丁香五月成人| 美女五月狠狠| 色综合久久久久久久久五月| 开心五月婷婷激情| 狠狠久久婷| 熟女人妻一区二区三区免费看| 99免费视频| 六月五月婷婷| 天天操夜夜啊| 任我鲁这里有精品视频| 九九激情| 亚洲愉拍99热成人精品| 五月婷婷五月天| 色久综合| 婷婷爱五月天人人爱| 99er6| 五月丁香性爱| 天天综合久久| 日本天堂网站99| 99成人在线观看| 激情综合五| 色狠狠综合| 日本精品。999| 九洲一级A片| 伊人久久大香天蕉亚洲特级| 丁香六月丁香婷婷激情| 国产亚洲色婷婷久久99精品91| 久久久大香蕉| 五月天com| 99视频网| 婷婷五月天免费| 男人天堂伊人五月丁香| 婷婷激情肏屄网| 性生活视频98791| 婷婷激情五月视频| 99热欲| 国产无遮挡又黄又爽免费网站| 操碰91| 激情五月天丁香| 超碰人人艹| 激情婷婷丁香| 99精品久久久久| 色色亚洲五月天| 色婷婷综合网站| 99色 色| 五月花婷婷最新| 五月婷婷丁香大陆免费| 天堂爱爱| 激情综合五月激情XXXX| 这里只有精品视频在线观看免费| 色狠狠五月天| 色噜噜狠狠色综合伊人| 天天噜天天插| 五月婷伊人| 五月丁香啪啪啪免费看| 9.1综合网| 综合激情五月四射婷婷| 99er这里只有精品视频| xxxx五月| caobi四区| 天天综合图片| 久久机只有这里精品| 国产欧美日韩一区二区三区| 色婷婷丁香AV综合| 天天爽夜夜爽| 五月婷婷免费在线观看视频| 婷婷五月天激情电影小说| 综合在线色婷婷| 综合激情视频| 五月婷婷六月丁香| 婷婷在线免费| 丁香五月婷婷网| 丁香五月偷拍| 激情婷婷丁香| 五月丁香六月婷婷综合| 综合激情五月婷婷| 久9热视频| 丁香九月婷婷综合| 久青青久| 丁香五月冃欧美| 久久色五月天综合网| 可以免费看的AV网站| 色五月婷婷在线| 夜夜干夜夜操| 五月婷婷人人人操| 伊人激情影院| 久久久久久久久月丁| 九热av| 91狠狠综合网| 激情五月深爱五月| 思思热久久久在线| 天天综合色| 狠狠操狠狠插| 色婷婷综合网站| 97超碰婷婷五月天| 99五月婷| 色噜噜狠狠色综合AV兰草影视| 五五月五月| 日日狠狠久久偷偷四色综合免费| 日韩 中文 欧美| 婷婷激情综合| 97人人草| 五月婷婷精品| 五月天激情小说| 狠狠狠五月婷婷六月丁香| 午夜丁香婷婷| 天天色粽合合合合合合合| 91肏肏肏| 99九九99九九九视频精彩| 婷婷五月中文在线| 天天操电影院色狼性av| 日韩人妻在线观看| 青青草视频免费观看| 五月天基地| 五月激情啪啪| 婷婷激情五月综合| 婷婷午夜| 亚洲无码猫咪| 狠狠色婷婷| 激情小说视频图片网| 日本久久综合| 99热黄| 91狠狠色丁香婷婷综合久久精品| 好好干av| 亚洲热热视频| 激情影院69| 婷婷激情小说网| 五月丁香六月婷婷综合网缴情| 婷婷色婷婷| 五月天操逼激情| 五月色婷| 色婷婷丁香香香蕉视频| 99在线观看| 九热电影av| 色青青视频| 91人操| 五月婷婷香蕉视频| 婷婷八月激情| 亚洲无码99| 丁香婷婷五月香蕉91| 色婷婷婷婷| 99热这里只有免费精品| 99性爱视频| 天天操天天曰天天射| 538久久| www.99在线| 色吊操色妞| 婷婷五月丁香五月| 久久九精品| 日本人人超碰| 五月丁香网av| 久久五月天视频| 色婷狠狠| sewuyuejiqingwang| 99性色| 99碰视频| 九九热99热| 五月激情天| 五月丁香综合激情| 五月综合视频| 成片免费观看大全| 亚洲mm色| 九九在线视频| 九九99精品| 26UUU精品一区二区c〇m| 日本天天操| 成人在线综合| 色色色色网站| 精品热青草| 免费久久这里只有精品99| 99无码黄色视频| 婷婷99狠狠躁天天躁中| 久久六月综合| 97在线天堂| 久久婷婷欧美| 国产欧美日韩综合精品一区二区| AV九九| 67194成I人在线观看线路1| 激情五月婷婷她| 99视频只有这里精品| 开心五月色婷婷综合开心网| 婷婷5月色| 婷婷丁香六月| 色五月综合激情| 人人干女人| 五月九九综合| 久久久精品人妻录| 超碰在线99| 婷婷五月激情热播| 婷婷啪啪| 思思99热这里只有精品| 超碰九九热| 人人综合久| 五月精品| 夜夜躁婷婷AV| 丁香五月成人| 婷婷五月色天| 91狠狠色| 丁香六月激情综合| 久久精品99| 九九热免费| 婷婷五月天久久久| 天天搞天天爽| 噜噜色天天开心| 狠狠综合网| 亚洲视99| 无码激情AAAAA片-区区| 中文人妻主播久久| 成人无码髙潮喷水A片| 婷婷的五月天另类视频| 屁股翘好撅高迎合跪趴| 天天爽日日搞| 在线综合亚洲欧美65| 色天天综合成人网| www.久操| AV性爱在线| 青青草轻轻操| 在线中文字幕视频| 色综久久AV| 亚洲亚洲人成综合网络| 六月天丁婷婷| 玖玖伊人网| 五月婷婷五月| 亚欧州精品视频| 婷婷五月天亚洲| 精品国产va久久久久| 无码AV免费精品一区二区三区| 六月丁香婷啪射| 97色综合| 婷婷九月丁香| 久久九色| 99ER热精品视频| 99热99这里免费的精品| 超碰京东热av男人的天堂| 狠狠狠狠狠狠色| 久久ww| 爱99干99| 色五月婷婷色五月| 日韩在线视频中文字幕| 婷婷五月天亚洲| 6080av| 亚洲成人av在线观看 | 亚洲狠狠婷婷综合久久久| 97操碰人免费| 丁香五月婷婷五月天| 九九色色| 久久小说网| 色婷婷狠狠18| 六月丁香大香蕉| 疯狂做受XXXX高潮A片动画| 丁香五月亚洲天堂| 久久激情五月婷婷| 欧美色五月| 天天草比天天爽| 九月丁香婷婷综合| 成人AV在线中文版| 亚洲第一综合| 爱爱色五月天| 91人人人人人人人| 丁香色色网| 亚洲综合网激情五月天| 99久热精品在线| 婷婷色色五月| 六月 丁香 视频| 婷婷导航| 91碰免费视频| 色99网| 色色色色色色综合| 久久五月激情| 日韩AV无码影片| 激情床戏| 九九热这里只有精品12| 九九自拍网| 日本强伦片中文字幕免费看| 超碰在线免费9| 五月婷婷色综图片| 91啪啪网| 亚洲欧洲中文日韩久久AV乱码| 天天日天天舔| 情五月亚洲婷婷| 色色色区| 香蕉久日夜| 婷婷精品免费久久| 日韩精品二三区| 五月天色色激情综合| 变天就操逼婷婷五月| 久久99网| 五月丁香六月婷婷啪啪| 五月丁香va| 久9久9久9久9久9久9| 亚洲成人在线观看av| 婷婷综合五月| 六月丁香色婷婷| 婷婷五月天日本国产| 丁香婷婷综合影院| 激情五月天色播| 14色综合婷婷| 成人性爱精品视频| 26uuu.| 欧美激情中文字幕| 1024人妻无码中文字幕| 夜夜骑夜夜操| 91丨九色丨熟女丰满| 深爱激情久久| 九九色综合| 亚洲成人AV在线| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 99在线视频喷水| 国产欧美熟妇另类久久久 | 五月在在观看| 色欲婷婷五月天| 丁香五月综合首页| 婷婷五月天97干| 婷婷六月色| 99超级碰碰| 婷婷香五月天| 激情综合网亚洲色图| 婷婷97狠狠干| 日本人妻操| 91色综合网站在线| 丁香五月花| 99热这里只有精品2| 色天堂在线| 99热这里只有精品2| 激情五月色综合国产精品| 日韩色色色色色| 丁香五月91| 第五婷婷伊人丁香| se婷97| 99精品久| 激情五月婷婷综合秋霞| 99精品国产在热久久| 激情婷婷五月| 久久香蕉网| 亚洲综合无码| 在线观看亚洲视频影院| 色婷婷狠狠18| 噜噜噜久久亚洲精品国产品91| 五月WWW| 婷婷五月天深爱| 五月色 亚洲| 再綫Av免费視品| 人人色婷婷五月天| 久久婷婷视频| 国产婷婷色五月| 精品99在线| 久久色五月| 琪琪色五月天| 色婷婷色情| 五月丁香久| 九九干视频| 欧美激情综合色综合啪啪五月| 玖玖婷婷免费| 日韩不卡123| 伊人天堂婷婷| 97涩婷婷婷婷基地| 日韩天堂久久| 婷婷五月a| 欧美精品A片一区在线观看| 丁香花五月天社区| 中文字幕网站在线观看| 玖玖婷婷五月| 色婷婷a v| 狠狠香蕉| 婷婷丁香五月亚洲欧美| 在线,国产,色,热视频| 天天搞夜夜爽夜夜爽| 五月丁香久人妻中文| 激情文学天天| 五月www| 五月涩涩网| 性99网站| 综合网激情| 99色热视频| 大香蕉综合| 啪啪啪大香蕉| 国产在线aaa片一区二区99| 黄色网址五月婷婷| 色吧网综合| 91热网址| 91婷婷| 激情精品久久| 丁香综合网| 久久机热/这里只有精品| 2017狠狠干| 久久这里有精品| 可以免费观看的av| 99天堂在线观看免费视频| 懂色av粉嫩AV蜜臀AV| 欧美WW在线网| 久草五月婷| 天天射美女| 开心五月婷婷六月丁香| 天天综合色综合| 五月天婷婷视频| 偷拍91九色| 夜夜撸日日操| 伊人免费视频9| 人操人人| 五月婷婷在线丁香| 97干婷婷五月天| 激情五月综合婷婷| 五月天色不卡| 激情性爱五月天网页| 欧美大道不卡| 日韩婷婷五月| 99热这里只有的精品视 | 婷婷九月色| 色青五月天| 五月丁香无码| 99操逼视频| 777精品久无码人妻蜜桃| 狠狠色中色| 婷婷久久大香蕉| 婷婷五月天综合蜜桃| 久狠狠| 二色av| 国产在线网址1| 91超碰人人操| 激情五月天婷婷激情| 激情五月www| 91精品久久久久| 三级片AAA久久久AAA久久久AAA | 丁香五月AV综合激情| 99热在线看| 国产精品美女| 久草五月婷| 99re热精品视频国| 婷婷五月天激情网站| 婷婷六月丁香五月| 99丁香五月婷婷在线| 99手机在线精品视频| 99精品视频免费观看近期发布| 国产精品岛国片在线观看免费| 亚洲性受XXXX五月丁香| 婷婷五月天黄色小说| AA丁香综合激情| 久久99免费视频网站| 99久精品视频| 婷婷五月色网| 一起草性爱不卡视频| JlZZJlZZ8JlZZ亚洲熟女| www.激情| 狠狠狠狠狠狠狠狠| 五月色网| 97欧美在线| www天天干| 日本人妻A片成人免费看片| 九月婷婷人人操人人舔人人爱| 成人AV免费观看| av操一操| 日韩中文字幕| 99在线视频精品| 亚洲色婷婷五月| 久久a热| 亚洲一区二区无遮挡A片| 亚洲成人电影aaaa| 五月丁香性爱| HD久久精品视频| 五月婷婷丁香大陆免费| 亚洲激情婷婷| 97热超碰| 色婷婷欧美在线| 婷婷永久在线| 97超级碰碰碰| 99热精品一区| 五月天丁香网| 在线成人网址| 99久久6| 激情五月天婷婷播播久久综合91| 婷婷亚洲五| 射久久丁香五月| 色综合中文综合网| 成人在线日韩| 久久伊人9| 9 1大香蕉| wwwxxx五月婷婷小说| 九九综合久久| 五月婷婷大香蕉| 婷婷五月天小说| 色婷婷亚洲综合av| 国产精品久久久丁香五月八戒视频| 亚洲a色| 五月丁香婷婷综合久久| 五月色天情| 婷婷五月天 丁香五月天 裸体| 色婷婷五月丁香在线观看| A片一曲| 玖玖激情五月天| 天天激情欧美美女| 五月桃花网综合| 色亭亭五月天网扯| 91久久久久久| 激情丁香婷婷| 大香蕉五月丁香| 国产综合视频婷婷| 亚洲天堂色色| 99人人看| 色色色无码| 婷婷五月丁香四射| 天天色综合网吨吧| 怡红院AV亚洲一区二区三区H | 中文网AV| 丁香五月婷婷色| 91啪啪视频| 色情五月丁香| 91精品婷婷国产综合| 天天干天天爽| 性爱五月丁香| 色色射| 97在线日本| 99精彩视频| 丁香五月久久社区| 天天色亚洲| 欧美啪啪五月天| 婷婷五月天电影区小说区| 激情婷婷22月间| 婷婷免费视频| 9热久久在线| 99热这里只有精品4| 日韩人妻AV在线| 天天热夜夜操| 免费V片在线| 五月伊人婷婷| 久操人| 大香蕉久久久| 丁香六月激情四射| 综合婷婷| 99热99成人| 丁香色五月 97干| 婷婷在线操| 婷婷五月丁香五月基地| 玖玖色资源站| 亚洲亚洲人成综合网络| 丁香五月网| 丁香婷婷五月综合欧美另类| 五月丁香花激情综合网| 九九精品碰| 91九色欧美| 99色热视频| 婷婷丁香六月天| 五月丁香婷婷激情| 九月丁香久久网| 五月花在线观看视频| 欧美日韩成人一区二区| 婷婷激情九月| 性色播| 激情性爱五月天网页| 丁香五月停停av| 久久jiuwww| www.超碰| 第二色AⅤ| 丁香五月婷婷av影院| 丁香五月天色婷婷| 怡春院久操| 五月丁香六月婷婷啪啪| 久久九九99字幕| 黄色AAAA韩国guochansanji| 久婷五月| 99色这里| 国产亚洲精品久久久久久久久动漫| 洗浴中心操B视频| 噜噜操操| 日韩色色视频| 五月丁香六月婷婷免费视频| 久久99免费视屏| 久久曰曰| 综合激情网| 久久婷婷东京热大香樵| 人妻中文在线| 久久婷婷六月综合资源| 91在线人| 丁香五月 综合| 亚洲狠狠爱婷婷| 99久在线精品99re5热视频| Xx色综合| av人人操| 久99久视频| 丁香五月婷婷成人网| 99热网址| 丁香激情五月天| 色婷婷狠狠18| 免费AAAAA网| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 婷婷不干网| 97色在线观看视频| 五月丁香婷婷综合| 色色色色色色综合网| 91超级碰在线视频| 午夜不卡成人一区二区| AV在线收看| 激情久久久| 九九视频在线观看| 狠狠搞五月天| 婷婷五月丁香激情图片| 五月天六月色| 亚州操人在线视频| 丁香六月激情综合| 婷婷丁香大香蕉| 欧美25p| 婷婷干五月综合在线播放| 超碰久热| 婷久久综合| 五月婷婷色情| 婷婷色五月天综合网| 激情五月丁香社区| 狠狠婷婷日韩| 五月天婷婷色色| 五月婷婷六月丁香色| 五月色情婷婷开心五月天| 久久成人亚洲欧美电影| 久久久人人操A V| 五月丁香婷婷激情在线视频| 97热超碰| 性做爰1一7伦| av在线免费网站 | 啪啪黄页网| 激情综合丁香六| 五月丁香啪啪| 天天拍天天操| WWW、日本色丁香、co m| 激情五婷网| 五月色婷丁香| 99精品在线观看| 久久伊人婷婷| 色婷婷成人| 婷婷成人丁香色情基地30| 色三级色三级| 久久码久久无清| 香蕉网婷婷| 综合色图区| 日本爆乳片手机在线播放| www久热com| 五月婷婷六月丁香激情综合网| 操久久精| 色婷大香蕉| 九九9久九9国产视频| www.色婷婷.com| 五月天婷婷丁香基地在线观看| 天天久久综合| 色情·com| 日韩五月婷婷| 婷婷碰碰| 天天射影院| 亚洲激情在线| 4399成人黄A片| 99干日本|