1. 程式人生 > >python框架Django實戰商城專案之工程搭建

python框架Django實戰商城專案之工程搭建

# 專案說明 該電商專案類似於京東商城,主要模組有驗證、使用者、第三方登入、首頁廣告、商品、購物車、訂單、支付以及後臺管理系統。 專案開發模式採用前後端不分離的模式,為了提高搜尋引擎排名,頁面整體重新整理採用jinja2模板引擎實現,區域性重新整理採用vue.js實現。 **專案執行機制如下:** ![file](https://img2020.cnblogs.com/other/1960827/202003/1960827-20200309144501212-1843119046.png) # 專案搭建 ## 工程建立 專案使用碼雲進行原始碼版本控制,在碼雲建立好後直接克隆到本地即可,然後在專案根目錄下執行` virtualenv venv創`建虛擬環境,`source venv/bin/activat`啟用虛擬環境後,安裝django後,執行 `django-admin startproject immortal_mall`建立django工程。 ## 配置開發環境 商城專案有兩個環境,分別為測試環境和開發環境,django專案在建立完成後只有一個settings配置檔案,但是兩個環境需要兩個配置檔案,這裡需要修改django獲取配置檔案的方式。新建settings包,再新建dev和pro兩個配置檔案,將預設生成的settings檔案裡面的內容拷貝至dev和pro檔案裡,結果如下 ![file](https://img2020.cnblogs.com/other/1960827/202003/1960827-20200309144501440-1101869292.png) 再在mange.py檔案裡指定開發環境需要的配置檔案,生成環境的後面再說 ![file](https://img2020.cnblogs.com/other/1960827/202003/1960827-20200309144501588-519224221.png) ## 配置jiaja2模板引擎 安裝jinja2擴充套件包pip install jinja2,然後在dev檔案中配置一下 ![file](https://img2020.cnblogs.com/other/1960827/202003/1960827-20200309144501856-1721664835.png) 這裡有個注意的點,如果在執行的時候報錯了,提示 ![file](https://img2020.cnblogs.com/other/1960827/202003/1960827-20200309144502015-1979559336.png) 這時是因為註釋掉了django預設的模板配置,需要去掉註釋,只新增新的版本引起即可。 ## 配置mysql資料庫 ### 新建資料庫 1. 新建資料庫 `create database meiduo charset=utf8;` 2. 新建mysql使用者 `create user mall identified by '123456';` 3. 授權使用者只能訪問immortal_mall資料庫 `grant all on immortal_mall.* to 'mall'@'%';` 4. 重新整理授權 `flush privileges;` ### 配置資料庫 ``` DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'immortal_mall', 'HOST': '127.0.0.1', 'USER': 'zhouyajun', 'PASSWORD': '12345678', 'PORT': '3306' } } ``` django預設使用的是mysqlclient工具,需要單獨安裝,這裡用`pymysql`代替,在工程同名子目錄的`__init__.py`檔案中,寫入下面程式碼 ``` import pymysql pymysql.install_as_MySQLdb() ``` 在啟動專案對的時候可能會報錯,提示mysql ``` File "/Users/lixiang/.env/lib/python3.6/site-packages/django/db/backends/mysql/base.py", line 36, in