一定罢、環(huán)境搭建
- Python環(huán)境
- 虛擬機(jī)環(huán)境搭建
- pycharm安裝
破解問題: 安裝java環(huán)境乒融,通過jar包方式進(jìn)行破解
- mysql安裝
二威蕉、Django簡介
- Django是用于Python開發(fā)的一個(gè)免費(fèi)開源web框架
- 官方文檔: https://www.djangoproject.com/
使用1.11長期支持版本(英文版)
參考2.0版本(中文版)
三、MVC模式&MTV模式
- MVC
M: model模型(數(shù)據(jù)存取)
V: views視圖(展示內(nèi)容)
C: contrller控制器(業(yè)務(wù)邏輯處理)
- MTV
M: model模型(ORM揩尸,對(duì)象和數(shù)據(jù)庫)
T: template模板(展示內(nèi)容)
V: view視圖(業(yè)務(wù)邏輯處理)
四所禀、Django環(huán)境
- 安裝Django
$ workon python3 # 進(jìn)入虛擬環(huán)境
$ pip install Django==1.11.4 # 安裝Django
# 檢查
$ python # 進(jìn)入python shell腳本
>>> import django
>>> django.get_version()
'1.11.4'
操作時(shí)方面,請(qǐng)切換到python3的虛擬環(huán)境中放钦!
五、創(chuàng)建Django項(xiàng)目
# 創(chuàng)建項(xiàng)目 "HelloDjango"
$ django-admin startproject HelloDjango
# 目錄層級(jí)說明
manage.py 命令行與django交互
HelloDjango/__init__.py 該目錄是包
HelloDjango/settings.py 項(xiàng)目配置文件 [具體看文件備注]
HelloDjango/urls.py 路由(分發(fā))
HelloDjango/wsgi.py 上線部署
# 啟動(dòng)項(xiàng)目
$ python manage.py runserver
虛擬環(huán)境設(shè)置: /home/atom/.virtualenvs/python3/bin/python
六恭金、創(chuàng)建應(yīng)用
$ python manage.py startapp meituan
文件說明
meituan/admin.py 站點(diǎn)配置(后臺(tái)管理)
meituan/apps.py 應(yīng)用配置
meituan/init.py 該目錄是包
meituan/mirgrations 數(shù)據(jù)庫操作相關(guān)的目錄(遷移文件)
meituan/models.py 模型(對(duì)象與數(shù)據(jù)庫)
meituan/views.py 視圖(業(yè)務(wù)邏輯處理)
激活應(yīng)用
settings.py文件〔儋鳌-> INSTALLED_APPS -> 'meituan'
一個(gè)項(xiàng)目中可以創(chuàng)建多個(gè)應(yīng)用
sqlite: 輕量級(jí)(小型)數(shù)據(jù)庫(客戶端,例如ios/andriod)
七横腿、基本流程
- 請(qǐng)求流程:用戶請(qǐng)求 ->urls ->views ->template ->用戶響應(yīng)
- template模板目錄床蜘,需要添加到settings.py配置文件中
八、在數(shù)據(jù)庫中生成對(duì)應(yīng)的表單
- 生成遷移文件
$ python manage.py makemigrations
模型:模型需要關(guān)聯(lián)項(xiàng)目C锼!扬蕊!
- 執(zhí)行遷移
$ python manage.py migrate
將 模型(表單)在數(shù)據(jù)庫中對(duì)應(yīng)創(chuàng)建表單
大坑點(diǎn)
- 路由規(guī)則
注意萬惡的"/"搀别,"^","$"
- 模型結(jié)構(gòu)和表單
修改完模型之后,需要執(zhí)行生成遷移文件尾抑,執(zhí)行遷移操作
- 瀏覽器緩存
問題描述:
一個(gè)頁面重新刷新時(shí)歇父,數(shù)據(jù)已經(jīng)發(fā)生改變,但頁面沒有改變
問題分析:
瀏覽器機(jī)制(緩存)【緩存是根據(jù)url】
解決:
清空瀏覽器緩存
該變端口號(hào)(url改變)
python manage.py runserver 9000 #端口9000
python manage.py runserver 0.0.0.0:8000 #綁定本機(jī)IP和端口
python manage.py runserver 0:9000 # 簡寫綁定本機(jī)IP