使用Form上傳資料到資料表,並建立管理者帳號修改資料庫內容

Step1)新增表單news\forms.py,用於產生最新消息的表單。

上述CreateNewsForm結果如下。

Step2)為了讓點擊次數,預設為0,建立新聞時不需要輸入點擊次數,修改news\models.py,新增click的數值預設為 0,default=0。

Step3)在news\urls.py新增建立最新消息的網址,與對應的函式。網址http://127.0.0.1/news/create/建立最新消息,對應到\news\views.py的函式news_create。

在news\views.py新增函式news_create(第9到17行)

當request.mothod等於POST(第10行),表示使用者填入標題與內容,想要建立最新消息。如果表單正確則將資料儲存到資料表News,從新導向網址news:news_list(第12到14行);否則建立空白表單(第16行),最後導向create.html樣板,表示讓使用者新增最新消息。

在news\templates\create.html,建立新增最新消息的樣板,如下。表單為news_form,urls.py的news:news_create將接收此表單,方法為POST。

瀏覽http://127.0.0.1:8000/news/create/,輸入標題與內容,點選「建立消息」

建立完成後,從新導向網址news:news_list,也就是http://127.0.0.1:8000/news/list/,此定義在news\urls.py

Step4)修改樣板news.html,讓表格的標題獨立在第一列(第13到17行)。

Step5)在虛擬環境下,使用以下指令新增Django管理者,請輸入管理者的帳號與密碼

> python manage.py createsuperuser

讓管理者可以管理資料表News,新增news\admin.py

瀏覽網址http://127.0.0.1:8000/admin/,使用管理者帳號密碼登入,就可以看到

News資料表,可以進行新增、修改與刪除。