7 - 在 Django Admin 后台发布文章

在此以前咱们完成了 Django 博客首页视图的编写,咱们但愿首页展现发布的博客文章列表,可是它却抱怨:暂时尚未发布的文章!如它所言,咱们确实尚未发布任何文章,本节咱们将使用 Django 自带的 Admin 后台来发布咱们的博客文章。javascript

建立 Admin 后台管理员帐户

要想进入Django Admin 后台,首先须要建立一个超级管理员帐户。咱们在 让 Django 完成翻译:迁移数据库 中已经建立了一个后台帐户,但若是你没有按照前面的步骤建立帐户的话,能够运行 python manage.py createsuperuser 命令新建一个:java

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.复制代码

注意:在命令行输入密码时可能不会显示输入的字符,不要觉得键盘坏了,照正常的方式输入密码便可。python

在 Admin 后台注册模型

要在后台注册咱们本身建立的几个模型,这样 Django Admin 才能知道它们的存在,注册很是简单,只须要在 blog\admin.py 中加入下面的代码:git

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)复制代码

激活虚拟环境,运行开发服务器,访问 http://127.0.0.1:8000/admin/ ,就进入了到了Django Admin 后台登陆页面,输入刚才建立的管理员帐户密码就能够登陆到后台了。github

Django Admin 后台

能够看到咱们刚才注册的三个模型了,点击 Posts 后面的增长按钮,将进入添加 Post 的页面,也就是新增博客文章。而后在相关的地方输入一些测试用的内容,增长完后点击保存,这样文章就添加完毕了,你也能够多添加几篇看看效果。注意每篇文章必须有一个分类,在添加文章时你能够选择已有分类。若是数据库中尚未分类,在选择分类时点击 Category 后面的 + 按钮新增一个分类便可。数据库

Django Admin 后台新增文章

你可能想往文章内容中添加图片,但目前来讲还作不到。在支持 Markdown 语法部分中将介绍如何在文章中插入图片的方法。django

访问 http://127.0.0.1:8000/ 首页,你就能够看到你添加的文章列表了,下面是我所在环境的效果图:服务器

博客首页显示的文章列表

定制 Admin 后台

在 admin post 列表页面,咱们只看到了文章的标题,可是咱们但愿它显示更加详细的信息,这须要咱们来定制 Admin 了,在 admin.py 添加以下代码:post

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 列表页面,能够看到显示的效果好多了。

定制后的 Admin 文章列表页

总结

本章节的代码位于:Step7: publish posts using django admin

若是遇到问题,请经过下面的方式寻求帮助。

相关文章
相关标签/搜索