Django2.0搭建简易个人博客(三)

>>最全面的Java面试大纲及答案解析(建议收藏)  

Django admin简介

Django为我们提供了强大的后台管理功能。

One of the most powerful parts of Django is the automatic admin interface. It reads metadata from your models to provide a quick, model-centric interface where trusted users can manage content on your site. The admin’s recommended use is limited to an organization’s internal management tool. It’s not intended for building your entire front end around.
——摘自Django官网

上面那段英文大致意思是这是Django提供的最强大的功能之一,它从你的模型中读取元数据,以提供一个快速,以模型为中心的界面给可信的用户管理你网站上的内容。admin仅限用作组织的内部管理工具。它并不打算构建你的整个前端。

admin的设置

还记得上一篇中提到的settings.py中管理app的列表吗?

INSTALLED_APPS = [
   'django.contrib.admin',
   'django.contrib.auth',
   'django.contrib.contenttypes',
   'django.contrib.sessions',
   'django.contrib.messages',
   'django.contrib.staticfiles',
   'blog'
]

列表中的第一个元素就是django.contrib.admin,admin这个功能已经默认在这里注册登记了,所以我们不用自己去添加了。
再看看MyBlog目录下的urls.py

urlpatterns = [
   path('admin/', admin.site.urls),
]

这里也已经包含了admin的url了。这意味这我们可以在浏览器地址栏输入类似....../admin这样的url来访问我们网站的后台管理界面了。

注:urls.py为我们建立起URL与view函数之间的映射关系。在Django2.0中已经用path函数取代了旧版本的url函数。写起来非常简便,后面我会详细介绍。

创建超级管理员

现在我们来创建一个超级管理员账号用于登录admin界面。首先打开你的终端,在Ubuntu图形界面下呼出终端的快捷键是ctrl+alt+T
接着,一定别忘了先在我们的项目目录激活我们用virtualenv创建的虚拟环境
$ cd MyBlog
$ source blogenv/bin/activate

特别提醒:要学会利用Google等搜索引擎,对于一些忘了的知识点,编码过程中出现的小错误,要积极搜索。

接着使用如下命令:
$ python manage.py createsuperuser
系统会提示我们输入username、email、password,即用户名、邮箱及密码。用户名如果不创建会默认使用你的系统用户名。密码会要求输入两遍。
千万注意:这里输入密码屏幕上不会有我们平时在windows下输入像QQ密码之类时的*,所以当你输密码而屏幕没有任何改变的时候不要怀疑键盘坏了,输完回车就行了。
这似乎是从Unix时代一路继承来的文化吧。
好了,现在我们来到blog目录下,打开admin.py。修改代码如下:

from django.contrib import admin

from blog.models import Article
# Register your models here.

admin.site.register(Article)

现在我们命令行使用命令:
$ python manage.py runserver
接着在浏览器输入:http://127.0.0.1:8000/admin/
我们就可以看到如下的界面了。

Django2.0搭建简易个人博客(三)

试着在后台随意添加几篇测试用的文章吧,在下一篇我们将会用到。

前面的文章我都传到gitbook上了,点击阅读原文可以查看。

扫描下面二维码可以关注我的公众号:

Django2.0搭建简易个人博客(三)

如果觉得我的文章对你有帮助,可以给我点打赏哦

Django2.0搭建简易个人博客(三)


原文始发于微信公众号(公子政的宅日常):Django2.0搭建简易个人博客(三)