DAY71-Django框架(二)
阿新 • • 發佈:2018-11-05
一、Django中app的概念
大學: ---------------專案
資訊學院 ----------app01
物理學院 ----------app02
強調:建立了app,要在setting.py配置檔案中註冊
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'app01.apps.App01Config',#建立專案時就建立了app,預設樣式 'app02',#手動註冊 ]
二、模板的路徑設定
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')]#模板路徑 , 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ]
三、靜態檔案的配置
STATIC_URL = '/static/' #一般不要改
#建立一個static資料夾 一般不要改
STATICFILES_DIRS=[
os.path.join(BASE_DIR, 'static'), #建立的資料夾路徑(可以寫多個)
]
四、完整的登入功能
login.html <!--action:提交到後臺的地址三種寫法: 1.http://127.0.0.1:8000/login 直接指定路徑 2./login/ 推薦用 3.空 當前頁面 --> <!--methods的兩種提交方式: 1.get:獲取資料,頁面,攜帶資料是不重要的資料(資料量有大小限制),提交的資料會在url中顯示,資料不安全 2.post:往後臺提交資料,相對安全 --> <form action="/login/" method="post"> <p>使用者名稱:<input type="text" name="name" class="form-control"></p> <p >密碼:<input type="password" name="pwd" class="form-control"> </p> <input type="submit" value="提交"> </form>
五、新手三件套
- render:返回頁,預設會去templates裡找,注意路徑
- redirect:重定向
- HttpResponse
本質:render和redirect都是返回HttpResponse的物件,是屬於HttpResponse的方法
六、orm介紹
1.ORM
即Object Relational Mapping,全稱物件關係對映。
優點:
1.不用寫sql,不會sql的人也可以寫程式
2.開發效率高
缺點:
1.可能sql的效率低
2.如何使用:
1.如果連線mysql:在setting裡配置:
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': '127.0.0.1',
'PORT': 3306,
'USER': 'root',
'PASSWORD': 'admin',
'NAME': 'lqz',
}
2.在app下的__init__.py裡寫:
import pymysql
# 更換連線模組
# MySQLdb替換為pymysql
pymysql.install_as_MySQLdb()
3.django-orm:
1.不能建立資料庫(需要手動建立資料庫)
2.可以建立資料表
3.可以建立欄位
4.資料庫遷移
1.python3 manage.py makemigrations ----記錄一下資料庫的變化
2.python3 manage.py migrate ----將變化同步到資料庫中