Django --- Django下載和APP創建 ORM (大概步驟)
1,下載:
命令行: pip install django == 1.11.15
pip install -i或 源 django == 1.11.15
pycharm
settings 解釋器 點 + 號 輸入django 選擇版本
2,創建 Django項目
1,命令行: (可能有的東西沒配置)
cd 保存項目的目錄
django - admin startporject 項目名
2,pycharm(可以自己都配置好)
filr(按鈕)--> new project --選擇django ---->選擇解釋器--創建django項目
3,啟動項目
1,命令行:
切換到 manage.py的目錄下
cd
python manage.py runserver #127.0.0.1:8000
python manage.py runserver 80 #127.0.0.1:8000
python manage.py runserver #0.0.0.1:8000
2.pycharm
配置項
點綠色三角啟動
4,settings配置
1,靜態文件
STATIC_URL= "/static/" #別名 ()
STATICFILES_DIRS = [
os.path.join(BASE_DIR,"static"),
] (可以創建多個)
2,TEMPLATES 模版 放HTML文件的地方
DIRS [os....] 自動生成的
3,註釋 csrf中間件
MIDDLEWARE 第四行 csrf 註釋掉這一行
4,數據庫的配置
5, URL 和函數的對應關系 ---> urls.py
urlpatterns[
url(r"^admin/",admin.site.urls),
url(),
]
6.APP
1.創建APP
1,命令行:
python manage.py startapp APP名
2,pycharm
tools ---> run manage.py task --> startapp APP名
2.註冊APP
在settings.py中
INSTALLED_APPS[
加上自己的APP名(如若pycharm創建 會自動添加 若是手動添加則按規範來
"APP名字.apps.App01Config")
]
7.使用mysql數據庫
1.創建一個數據庫
2.在srttings配置:
DATABASES = {
‘default‘: {
‘ENGINE‘: ‘django.db.backends.mysql‘, #引擎
‘NAME‘: ‘db66‘, #數據庫名字
"USER": "root", #賬戶
"PASSWORD": "666666", #密碼
"HOST": "127.0.0.1", #IP地址
"PORT": 3306, #端口號
}
}
3.告訴Django 使用pymysql 模塊連接數據庫
在settings.py 同級目錄下的 __init__.py中寫(下載好了 pymysql):
import pymysql
pymysql.install_as_MYSQLad()
4.建表 在APP文件夾裏 models.py文件中寫類(繼承 models.Model)
class Userinfo(models.Model):
user = models.CharField(max_length=32)
pwd = models.CharField(max_length=32)
5.執行命令 (數據庫遷移命令)
Tools ---> Run~~
python manage.py makemigrations #記錄models.py中類是不是有變化 將變化的內容記錄下來 記錄到了 APP文件下 migrations 0001_initial.py裏面
python manage.py migrate
8 .ORM
對象和關系型數據庫的映射 通過操作對象的方式來操作數據庫
映射關系;
類 ---> 數據表
對象 ---> 數據行
屬性 ---> 字段
ORM 能做的事:
操作數據表 (建表,刪表,改表)
操作數據行
ORM 的操作 :
from login import models
# 獲取所有數據
models.Userinfo.objects.all() ---> Queryset類型
# 獲取一條數據
models.Userinfo.objects.get(user="??",pwd="??")
get取不到數據或者取到多條數據的時候報錯
#創建一條數據
models.Userinfo.objects.creat(user="??",pwd="??")
1.查
from login import models
# 獲取所有數據
models.Userinfo.objects.all() ---> Queryset類型
models.Userinfo.objects.all().order.by(‘id‘)排序 升序
# 獲取一條數據
models.Userinfo.objects.get(user="??",pwd="??")
get取不到數據或者取到多條數據的時候報錯
屬性:
pub_pbj.id
pub_obj.name
外鍵:
book_obj.id
book_obj.title
book_obj.publisher ---->書籍關聯的出版社對象
book_obj.publisher_id ---->書籍關聯的出版社對象的id
偶對多:
autho_obj.id
autho_obj.name
autho_obj.books ----->管理對象
autho_obj.books.all()
2.增
#創建一條數據
(新變量名)=models.Userinfo.objects.creat(name="新名字")
外鍵:
models.Book.objects.creeate(title = ‘新的書名‘,publisher_pub_obj)
models.Book.objects.create(title=‘新的名字‘,publisher_id=pub_obj.id)
多對多:
autho_obj=models.Author.objects.create(name=‘作者名字‘)
authon_obj = books.set([1,2,5])
3.刪
#刪除一個
models.Publisher.objects.get(id=1,name="xxx").delete()
-------------------------------------------------------
models.Publisher.objects.all().delete()
4,改
#普通修改
pub_obj.name = ‘新的名字‘
pub_obj.save()
-----------------------------------------------------------
book_obj.title = ‘新的書名‘
book_obj.publisher = pub_obj
book_obj.save()
9.form表單
1.method ="post" (form表單裏面 必須帶有這個) action="" ,這是請求方式 和提交數據的地址
2.所有的 input標簽要有name屬性, name的名字要和 上面ORM 的user pwd 相同
3.有一個input 的type="submit" 或者有一個button 按鈕 就可以提交form表單
10. views.py 寫函數
request 跟請求相關的內容
request.method 字符串 請求方式 GET/POST
request.POST post請求提交的數據 字典
request.GET get請求提交的數據
返回值
from django.shortcuts import HttpResponse,render,redirect
HttpResponse("字符串") -->頁面顯示的就是字符串
render(request,"模版文件的名字") -->渲染你的HTML文件返回給瀏覽器
redirect("/要跳轉的URL/") --->重定向 告訴瀏覽器再向瀏覽器發次GET請求
Django --- Django下載和APP創建 ORM (大概步驟)