django-happy-shop一個可以快速集成到任何django項目的商城模塊

介紹

HappyShop 是一個 Django 開發的第三方包,可以快速集成到任何django項目,以便快速獲得一個簡單的商城功能。

本項目採用django + DRF + vue開發,具備前後端分離基因,擁有完整的多規格商品邏輯,集成支付寶支付,只需要簡單配置即可快速收款!

當然,其他功能還在迭代…

演示站

快速開始

pip命令快速安裝

安裝方法與python其他包的方法一致,一條命令即可快速安裝!

pip install django-happy-shop

使用說明

  1. 將 "happy_shop" 添加到您的 INSTALLED_APPS 設置中,以及項目需要的其他幾個依賴,如下所示:
INSTALLED_APPS = [
    ...
    'happy_shop',      # happy_shop主程序
    'rest_framework',  # DRF
	
    'corsheaders',     # 處理跨域的包
    'crispy_forms',    # 可瀏覽API的form包,便於調試
]

其中引入happy_shop 與 rest_framework 兩個模塊是必須的,因爲改程序依賴於他們兩個,下邊兩個模塊是爲了方便調試而引入的,一個是解決跨域問題而引入,這個視自己的使用情況決定,當前程序可以不引入,另外一個是爲了配合django-filter模塊使用,如果不開發調試可不引入!

  1. 在項目 urls.py 中包含 happy_shop 的 URLconf,如下所示
urlpatterns = [
    ...
    # 這裏url開頭的happy暫時請不要自定義,可能會影響某些接口的運作
    path('happy/', include('happy_shop.urls')),  
]

如果需要查看可瀏覽的API文檔及頁面還需要加入以下兩個url,這不是必須的,根據自己使用情況而定!

from rest_framework.documentation import include_docs_urls

urlpatterns = [
    ...
    # 這裏url開頭的happy暫時請不要自定義,可能會影響某些接口的運作
    path('happy/', include('happy_shop.urls')),  
	
    # 需要查看drf的接口文檔請配置
    path('docs/', include_docs_urls(title='HappyShop API')), 
    # 需要DRF的可瀏覽API能力請配置 
    path('api-auth/', include('rest_framework.urls')),    
]
  1. 運行django的migrate命令創建模型數據
python manage.py migrate
  1. 運行django的runserver命令,啓動開發服務器
python manage.py runserver
  1. 訪問http://127.0.0.1:8000/happy/ 即可查看商城頁面!

  2. 當前商城系統後臺依賴django默認的admin,請訪問http://127.0.0.1:8000/admin/ 進入後臺進行數據管理,請自行創建管理員賬號密碼及無比開啓django管理後端【django默認後端】!

python manage.py createsuperuser  # 創建超管

支付配置

注意:如果你只是暫時查看演示,不需要收款,到此就先告一段落!

配置收款需要在項目的settings.py文件中額外引入相關配置,記住支付寶的相關公鑰和私鑰都是需要配置路徑文件,這裏一一定要配置正確,否則會影響程序運行,這一塊後期版本可能會優化!

配置如下:

HAPPY_SHOP = {
    'ALIPAY':{
        'APPID': appid
        'RETURN_URL': 'http://127.0.0.1:8000/happy/api/alipay/',
        'NOTIFY_URL': 'http://127.0.0.1:8000/happy/api/alipay/',
        'DEBUG': DEBUG, 
        'PRIVATE_KEY':BASE_DIR / 'app_private_key.pem',    # 應用私鑰
        'PUBLIC_KEY':BASE_DIR / 'alipay_public_key.pem',   # 支付寶公鑰,不是應用公鑰
    },
}

私鑰與公鑰一定要配置正確,否則回調無法驗證成功,訂單狀態無法修改! 部署時一定要關閉django的DEBUG模式,否則支付地址跳轉爲沙箱地址,不能正確收款!

其他

其他相關模塊的配置,請參考有關模塊的文檔,感謝一下幾個模塊的作者!

歡迎大家start,評論指教!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章