Python學習---Django的基礎學習180116
Django創建數據庫操作
django流程之model實例
settigs.py:更改Django2.0.1的配置,更新為之前的路徑配置
‘DIRS‘: [os.path.join(BASE_DIR, ‘templates‘)], # 設置templates的路徑為Django以前版本 # ‘DIRS‘: [], # 註釋掉該行,此為Django 2.0.1最新版本 # ‘django.middleware.csrf.CsrfViewMiddleware‘,
views.py
# Create your tests here. from django.shortcuts import render, HttpResponse from blog import models def userInfo(request): # 這裏需要判斷前臺數據提交的方法是POST還是GET的[大寫] if request.method == "POST": get_username = request.POST.get("username", None) get_sex = request.POST.get("sex", None) get_email = request.POST.get("email", None) models.UserInfo.objects.create( # 進行ORM映射,同時Insert數據到數據庫 username=get_username, sex=get_sex, email=get_email ) user_list = models.UserInfo.objects.all() # 獲取數據庫裏面的數據 print(user_list) return render(request, ‘index.html‘, {"user_list": user_list}) # 用{}傳遞一個對象給前端
mysite2/urls.py
from django.contrib import admin from django.urls import path from blog import views urlpatterns = [ path(‘admin/‘, admin.site.urls), path(r‘userInfo/‘, views.userInfo), # 將路徑名跟函數進行映射 ]
models.py :創建ORM映射模版
from django.db import models class UserInfo(models.Model): username = models.CharField(max_length=64) # 創建數據庫字段,並設置長度為64k sex = models.CharField(max_length=64) email = models.CharField(max_length=64)
templates/index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> </head> <body> <form method="post" action="/userInfo/" name="userInfo"> <p>姓名<input type="text" name="username"></p> <p>性別<input type="text" name="sex"></p> <p>郵箱<input type="text" name="email"></p> <p><input type="submit" value="提交"></p> </form><hr><hr> <table border="1"> <tr> <th>姓名</th> <th>性別</th> <th>郵箱</th> </tr> {% for i in user_list %} {#Django裏面封裝的模版語法,用於for循環#} <tr> {# 這裏是變量,所以需要2個{}來進行變量引用[規定的] #} <th>{{ i.username }}</th> {# 這裏類似字典的取值 i[username] #} <th>{{ i.sex }}</th> {# 這裏類似i[sex] #} <th>{{ i.email }}</th> {# 這裏類似i[email] #} </tr> {% endfor %} {# 註意結束for循環 #} </table> </body> </html>
創建數據庫以及同步數據庫數據
生成同步數據庫的腳本:python manage.py makemigrations
同步數據庫: python manage.py migrate
註意1:如果安裝完成後打不開DB數據庫,是因為沒有安裝連接數據庫的jar包,PyCharm可以幫助我們進行安裝
註意2:在開發過程中,數據庫同步誤操作之後,難免會遇到後面不能同步成功的情況,解決這個問題的一個簡單粗暴方法是把migrations目錄下的腳本(除__init__.py之外)全部刪掉,再把數據庫刪掉之後創建一個新的數據庫,數據庫同步操作再重新做一遍。
settigs.py: 默認的數據庫
註意3:重啟Django服務,查看頁面數據
django之登錄默認的admin界面
創建項目好了以後我們會發現有一個默認的admin的函數,對應的就有個URL的地址:http://127.0.0.1:8080/admin/
當我們訪問http://127.0.0.1:8080/admin/時,會出現:
我們需要為進入這個項目的後臺創建超級管理員:python manage.py createsuperuser,設置好用戶名和密碼後便可登錄啦!
後臺輸入命令創建用戶:python manage.py createsuperuser
其他參考
清空數據庫:
python manage.py flush
查詢某個命令的詳細信息:
django-admin.py help startapp
admin 是Django 自帶的一個後臺數據庫管理系統。
終端上輸入python manage.py 可以看到詳細的列表,在忘記子名稱的時候特別有用
python manage.py
啟動當前項目的django交互界面 :
python manage.py shell
註意:這個命令和直接運行 python 進入 shell 的區別是:你可以在這個 shell 裏面調用當前項目的 models.py 中的 API,對於操作數據,還有一些小測試非常方便。
Python學習---Django的基礎學習180116