Pycharm上Django的使用 Day8

1.添加新條目html

1>編寫用於添加新條目的表單數據庫

在forms.py中建立一個與模型Entry相關聯的表單瀏覽器

1處給字段'text'指定一個空標籤函數

2處定義小部件widgets,widgets是一個HTML表單元素orm

2>定義new_entry的URL模式htm

在用於添加新條目的頁面的URL模式中,須要包含實參topic_id,由於條目必須與特定主題相關聯。請求的URL與這個模式匹配時,Django將請求和主題ID發送給函數new_entry()對象

3>編寫視圖函數blog

1處表示使用形參topic_id來得到正確的主題get

2,3處都與上一節編寫的new_topic同樣的it

4處表示若是請求方法是POST,咱們就對數據進行處理:建立一個EntryForm實例,使用request對象中的POST數據來填充它

5處調用save()時,咱們傳遞了實參commit = False,目的是讓Django建立一個新的條目對象,並將其存儲到new_entry中,但不將它保存到數據庫中

6處表示咱們將new_entry的屬性topic設置爲在這個函數開頭從數據庫中獲取的主題,而後調用save(),這將把條目保存到數據庫,並將其與正確的主題相關聯

7處表示調用HttpResponseRedirect()將用戶重定向到顯示新增條目所屬主題的頁面,用戶將在該頁面的條目列表中看到新添加的條目

4>編寫模板new_entry.html

1處表示添加一個連接,讓用戶知道他是在哪一個主題中添加條目

2處表單實參action包含URL中的topic_id值,讓視圖函數可以將新條目關聯到正確的主圖,實參method讓瀏覽器以POST方式提交數據

5>連接到頁面new_entry

咱們須要在顯示特定主題的頁面中添加到頁面new_entry的連接

6>運行manage.py

點擊Topics下面的任一一個主題,好比Dota2吧

點擊add new entry

點擊add entry

網頁跳轉到Dota2的entries下,並列出新添加的entry,上圖紅圈就是哈

相關文章
相關標籤/搜索