django筆記 - 建站
1,建站步驟:
1)django-admin.exe startproject mysite
創建完後的目錄結構:
- mysite # 對整個程序進行配置
- init
- settings # 配置文件
- url # URL對應關系
- wsgi # 遵循wsgi規範,處理soceket的規範,一般用uwsgi
- manage.py # 管理django程序,例如runserver,startapp,makemigration,migrate
備註:如果不是pycharmproject根目錄下建站點,import會被pycharm提示飄紅
2)mysite/ python3 manage.py runserver 127.0.0.1:8001,地址和端口號不打默認是127.0.0.1:8000,或者 pycharm打開mysite運行
3)mysite/ python3 manage.py startapp app01
app目錄:
- migrations # 數據庫相關的操作,這裏會生成相關的數據庫操作記錄
- init # python2文件夾必須有個init(from … import…,python2會認為文件夾而報錯,只有含init文件時Python2才能導入,python3可以沒有init)
- admin # django提供的後臺管理程序
- app # 配置當前app
- models # 創建數據庫表,ORM,寫指定的類,通過命令就可以創建數據庫結構
- test # 開發交
- views # 和app01相關的所有業務,主要寫業務邏輯代碼,例如主機管理,防火墻管理
4)建文件夾:templates,static,upload, models
5)settings:TEMPLATES(添加項目),STATICFILES_DIRS(新增),MIDDLEWARE(註釋掉),INSTALLED_APPS(添加項目),DATABASES(修改)
i,TEMPLATES # 模板路徑,用render打開網頁時需要修改TEMPLATES下的參數(註意render不能使用相對路徑)
‘DIRS‘:[os.path.join(BASE_DIR, ‘templates‘)]
ii,STATICFILES_DIRS # 靜態目錄,需新增該參數,靜態網頁包括例如css,js
STATICFILES_DIRS= (
os.path.join(BASE_DIR, ‘static‘),
)
iii,MIDDLEWARE
middleware.csrf.CsrfViewMiddleware # 註釋掉,表單提交到login不會報csrf錯
iv,INSTALLED_APP
添加‘app01‘ # 用於數據庫連接
v,DATABASES # 改為mysql連接
DATABASES = {
‘default‘: {
‘ENGINE‘: ‘django.db.backends.mysql‘,
‘NAME‘:‘dbname‘, # 數據庫名,這個django無法創建,得先自己創建
‘USER‘: ‘root‘,
‘PASSWORD‘: ‘xxx‘,
‘HOST‘: ‘‘,
‘PORT‘: ‘‘,
}
}
6)urls和app01/views中需要導入的模塊
urls:
from django.conf.urls import url
import app01.views
app.views:
from django.shortcuts import HttpResponse
from django.shortcuts import redirect
from django.views import View
import os
2,django的流程
客戶端 —> 路由系統(urls)—> app.views —> templates、靜態目錄、數據庫
django筆記 - 建站