Django 博客開發教程 7 - 在 Django Admin 後台發布文章
在此之前我們完成了 Django 博客首頁視圖的編寫,我們希望首頁展示發布的博客文章列表,但是它卻抱怨:暫時還沒有發布的文章!如它所言,我們確實還沒有發布任何文章,本節我們將使用 Django 自帶的 Admin 後台來發布我們的博客文章。
創建 Admin 後台管理員賬戶
要想進入Django Admin 後台,首先需要創建一個超級管理員賬戶。我們在 讓 Django 完成翻譯:遷移數據庫 中已經創建了一個後台賬戶,但如果你沒有按照前麵的步驟創建賬戶的話,可以運行 python manage.py createsuperuser
命令新建一個:
python manage.py createsuperuser
Username (leave blank to use 'zmrenwu@163.com'): admin
Email address: admin@example.com
Warning: Password input may be echoed.
Password: ******
Warning: Password input may be echoed.
Password (again): ******
Superuser created successfully.
注意:在命令行輸入密碼時可能不會顯示輸入的字符,不要以為鍵盤壞了,照正常的方式輸入密碼即可。
在 Admin 後台注冊模型
要在後台注冊我們自己創建的幾個模型,這樣 Django Admin 才能知道它們的存在,注冊非常簡單,隻需要在 blog\admin.py 中加入下麵的代碼:
blog/admin.py
from django.contrib import admin
from .models import Post, Category, Tag
admin.site.register(Post)
admin.site.register(Category)
admin.site.register(Tag)
激活虛擬環境,運行開發服務器,訪問 https://127.0.0.1:8000/admin/ ,就進入了到了Django Admin 後台登錄頁麵,輸入剛才創建的管理員賬戶密碼就可以登錄到後台了。
可以看到我們剛才注冊的三個模型了,點擊 Posts 後麵的**增加**按鈕,將進入添加 Post 的頁麵,也就是新增博客文章。然後在相關的地方輸入一些測試用的內容,增加完後點擊保存,這樣文章就添加完畢了,你也可以多添加幾篇看看效果。注意每篇文章必須有一個分類,在添加文章時你可以選擇已有分類。如果數據庫中還沒有分類,在選擇分類時點擊 Category 後麵的 + 按鈕新增一個分類即可。
你可能想往文章內容中添加圖片,但目前來說還做不到。在支持 Markdown 語法部分中將介紹如何在文章中插入圖片的方法。
訪問 https://127.0.0.1:8000/ 首頁,你就可以看到你添加的文章列表了,下麵是我所在環境的效果圖:
定製 Admin 後台
在 admin post 列表頁麵,我們隻看到了文章的標題,但是我們希望它顯示更加詳細的信息,這需要我們來定製 Admin 了,在 admin.py 添加如下代碼:
blog/admin.py
from django.contrib import admin
from .models import Post, Category, Tag
class PostAdmin(admin.ModelAdmin):
list_display = ['title', 'created_time', 'modified_time', 'category', 'author']
# 把新增的 PostAdmin 也注冊進來
admin.site.register(Post, PostAdmin)
admin.site.register(Category)
admin.site.register(Tag)
由於如何定製 Admin 後台不是本教程的重點,這裏隻是為了簡單地到達期望效果,因此不再對上述代碼做過多解釋。
刷新 Admin Post 列表頁麵,可以看到顯示的效果好多了。
總結
本章節的代碼位於:Step7: publish posts using django admin。
如果遇到問題,請通過下麵的方式尋求幫助。
- 在 在 Django Admin 後台發布文章 - 追夢人物的博客 的評論區留言。
- 將問題的詳細描述通過郵件發送到 djangostudyteam@163.com,一般會在 24 小時內回複。
更多Django 教程,請訪問 追夢人物的博客。
最後更新:2017-05-31 12:02:34