Django中一个最强大的部分是自动管理接口,在模型中读取元数据来提供一个强大的、生产就绪的接口,使内容提供者能立即用它向站点中添加内容,在这篇文档中,我们讨论如何去激活,使用和自定义Django的站点管理接口。
创建管理员:
我们在浏览器中输入http://127.0.0.1:8000/admin,便可进入到后台管理登录页面,如下图所示:
此时我们还没有创建管理用户,与创建app一样,pycharm中输入如下命令:
createsuperuser
然后按照提示依次输入用户名、邮箱、密码、确认密码,即可创建出管理员用户。
登录后台,即可。
admin配置:
登录后台后,我们看到此时的后台只有用户、组和最近动作,并没有我们之前创建的我的博客、博客分类、博客标签这些内容。
我们可以在admin.py中进行配置,将其在后台展现出来:
from myblog.models import Blog, Category, Tag
admin.site.register(Blog)
admin.site.register(Category)
admin.site.register(Tag)
此时,再次刷新博客admin页面,即可看到我们创建的三张表:
我们可以对其进行增加、修改、删除操作。
现在我们开始写第一篇博客,保存之后,进入到navicat中blog表中,可以看到多出一个数据,这就是我们刚添加的第一篇博客。是不是很方便呢,admin也是django中最方便的一个特性了。
但是,我们点击进入我的博客后,发现只有博客的标题展示出来,如果我们还想添加其它字段,比如点击数、发表时间等,同样可以在admin.py中进行配置:
class BlogAdmin(admin.ModelAdmin):
list_display = ['title', 'click_nums', 'category', 'create_time', 'modify_time']
admin.site.register(Blog, BlogAdmin)
如果还想对其它表进行配置,可以按照同样的方法,创建一个继承类即可。下面的注册也需要改一下。
配置完后,刷新下后台,即可看到我们已经成功的将点击数、博客分类、创建时间、修改时间这些字段添加进来了。
关于admin.py的其它更多配置,我们在后面会继续讲到。
——————————————————————————————————————————
项目的完整代码:django_blog
觉得有用的欢迎给个star。