前面介紹了django平台的資料互動,這些資料都是在本地存放著,修改內容或者重新啟動服務,資料就消失了,如果我們把資料存放在資料庫中,不就儲存了嗎?
說這麼多,不知道大家理解不理解,其實就是通過例項物件的方法幫助我們寫sql語句從而方便我們。(其實就是通過你寫的**,然後幫你寫sql語句)
其實我們今天所寫的django的資料庫其實就是通過orm來實現的。
django中自帶的也有資料庫(sqlite3),自帶的輕量級資料庫sqlite3,已經完全夠了,當然大家都很資料mysql資料庫,我們也可以通過django連線mysql資料庫
在檔案settings,py檔案下中找到以下配置資訊,該資訊為連線預設資料庫(sqlite3)
#如果想要連線mysql資料庫,我們可以進行修改成以下引數連線資料庫
databases =
}
#資料庫已經連線成功了。但是還需要安裝mysql外掛程式mysqlclient配置mysql資料庫
databases =
}
在檔案models.py下建立表名以及表字段
# model.py開啟cmd,跳轉到專案目錄下執行以下命令,同步資料庫#建立表名已經表字段
from django.db import
models
#class名代表表名,models.model固定寫法
class
user(models.model):
#username,password 表示建立欄位名,長度為32
username = models.charfield(max_length=32)
password = models.charfield(max_length=32)
#同步資料庫
這個時候會看到專案中的migrations中自動生成了乙個檔案 0001_initial.py, 這個時候我們繼續執行命令
# 建立資料庫表最後工作了,啟動django服務,進入到對應的位址,輸入使用者名稱和密碼,點選提交這個時候我們都已經把資料庫全部建立完成了。
這個時候會建立一些django自帶的表,如果不需要的話我們可以在sttings.py檔案中進行進行螢幕
'django.contrib.admin
', #
admin管理後台站點
'django.contrib.auth
', #
身份認證系統
'django.contrib.contenttypes
', #
內容型別框架
'django.contrib.sessions
', #
會話框架
'django.contrib.messages
', #
訊息框架
'django.contrib.staticfiles
', #
靜態檔案管理框架
'djtest
', #
專案應用
]建立好後資料庫,你會發現django專案中重新建立了乙個檔案migrations,裡面的內容就是資料庫的一些操作
注:如果一不小心刪除了migrations檔案的資料,那麼怎麼辦?
1、刪除migrations下除了__int__.py的檔案
2、重新執行同步資料庫的命令
#同步資料庫
python manage.py makemigrations
#建立資料庫
python manage.py migrate#這個地方需要注意前面寫的html接收的內容,然後再返回給使用者瀏覽器,這裡修改了index.html檔案views.py
defindex(request):
if request.method == '
post':
username = request.post.get('
username')
password = request.post.get('
password')
#將資料儲存到資料庫
models.user.objects.create(username=username,password=password)
return render(request, '
index.html
', )
>安靜部落格樂園
title
>
head
>
<
body
>
<
center
>
<
li>
歡迎您,
<
tbody
>
<
tr>
<
td>}
td>
tr>
tbody
>
li>
center
>
ul>
body
>
html
>
提交過後,來到我們的資料庫中,進行檢視,資料是否提交(我這裡輸入多次不同的資料)
可以發現資料已經全部都存到資料庫中了。這樣就可以把提交過的資料全部都儲存在資料庫中,然而不會重啟伺服器導致資料丟失了
#連線 postgresql
django.db.backends.postgresql
#連線 mysql
django.db.backends.mysql
#連線 sqlite
django.db.backends.sqlite3
#連線 oracle
django.db.backends.oracle
Django Django錯誤整理
1.settings cannot be imported,because environment variable django settings module is undefined.解決方法 from django.template import template,context from ...
Django Django基本命令
django admin.py startproject 專案名稱 例 django admin.py startproject myproject當前目錄下會生成myproject的工程,目錄結構如下 myproject manage.py myproject init py settings.p...
mysql 主從庫更新延遲,通過o
最近由於庫比較不穩定還在集體改版,我碰到乙個問題 主庫更新後,從庫兩秒才能拿到更新後的資料,比如贊操作點後自動在頁面html 1,但是由於讀取列表是在從庫,如果重新整理的快,會看到贊還是沒 1之前的數值。今天跟新青和李偉他倆討論,新青提供的方式很棒,特此記錄。我只需在他基礎上整合了一下列表輸出操作就...