部落格組成
型別備註
文字標題
文字型別
文章摘要
文字型別
文章內容
文字型別
唯一id標記
數值型別
自增、主鍵
發布日期
日期型別
1. 定義字段
- 編寫應用blog中的model.py
from django.db import models
# create your models here.
class
article
(models.model)
:# 唯一id標識
article_id = models.autofield(primary_key=
true
)# 文章標題\
article_title = models.textfield(
)# 文章摘要
article_content = models.textfield(
)# 文章內容
content = models.textfield(
)# 發布日期
publish_data = models.datetimefield(auto_now=
true
)
2.將模型遷移到資料庫為什麼要使用admin模組
怎麼使用
即從資料庫讀取資料,並在網頁上顯示
操作如下:
部落格頁面設計
bootstrap與bootstrap的格柵系統
實現靜態頁面
**** tips:pycharm 格式化**快捷鍵 ctrl + alt + l
上述的頁面為靜態頁面,寫死在html檔案中。不方便修改和維護。
為什麼需要模板
什麼是模板系統
基本語法
變數標籤:}
例子:< html>}< /body>< /html>
2.for迴圈標籤:
,例子:
if-else分支標籤:
, ,
例子:this is a true part
this is a false part
修改之前靜態的html檔案
class
="container page-body"
>
class
="col-md-9"
role="
'main"
>
class
='body-main'
>
# article_list代表文章列表,需要被賦值
>
>
}h2>
>}p
>
div>
div>
div>
在視**件中,建立專門渲染該頁面的檢視函式,傳遞資料進行渲染
defget_index_page
(request)
: article_list= article.objects.
all(
)return render(request,
'blog/index.html'
,# 渲染-傳遞資料
)
部落格主頁和文章詳細頁面改動差異不大,但為了文章詳細頁面內容便於**,需要做分行處理,以換行符/n分行。
def
get_details_page
(request)
: curr_article=article.objects.
all()[
0]# 獲得當前文章
section_list = curr_article.content.split(
'\n'
)return render(request,
'blog/details.html'
,)
class
='body-main'
>
>
>}p
>
div>
div>
開發到此時,部落格專案情況:
因此,需要繼續進行改進
設計思路
設計文章詳情頁的url
- 使用位址轉化器傳遞數字
- path('detail/< int:article_id>',views.get_detail_page)
完善檢視函式的邏輯
首頁跳轉
修改頁面布局
完善檢視函式邏輯
- 使用了enumerate( )
它是python的內建函式,將乙個可遍歷的物件(列表、元組、字串等)
組合為乙個索引序列,同時列出資料和資料下標。
一般用於for迴圈中,可以同時得到資料物件的值和其對應的索引值。
語法: enumerate(《遍歷物件》,[索引起始值])
設計思路:
Django開發個人部落格專案 8 部落格歸檔
按照首頁建立的方法建立歸檔頁面,將archive.html從模板檔案中拷貝到templates目錄下,並繼承自base.html頁面,然後建立檢視函式,並通過url將兩者聯絡起來。archive.html 歸檔 content wrap view.py class arichiveview view...
使用django開發最簡單部落格程式
2 實驗平台 mandriva 2008 sqlite3 django1.0 4 建立project django admin.py startproject demo 5 修改demo settings.py檔案中的資料庫鏈結項 database engine sqlite3 database n...
Django部落格專案 1
1.把django admin.py檔案放在專案資料夾中,在cmd中使用下面命令 python django admin.py startproject blogproject2.cmd進入blogproject資料夾中。3.生成資料庫 python manage.py makemigrations...