Django个人博客开发六 | admin管理后台


2020年4月2日 22:39 阅读 656 评论 0 None

Django 中一个最强大的部分是自动管理接口,在模型中读取元数据来提供一个强大的、生产就绪的接口,使内容提供者能立即用它向站点中添加内容,在这篇文档中,我们讨论如何去激活,使用和自定义Django的站点管理接口。

1、创建管理员

我们在浏览器中输入http://127.0.0.1:8000/admin,便可进入到后台管理登录页面,如下图所示:

管理员登录页面

此时我们还没有创建管理用户,与创建app一样

python manage.py createsuperuser 

然后按照提示依次输入用户名、邮箱、密码、确认密码,即可创建管理员用户,登录后台,即可。

2、注册模型到后台

登录后台后,我们看到此时的后台只有用户、组和最近动作,并没有我们之前创建的我的文章、分类、标签这些内容

我们可以在admin.py中进行配置,将其在后台展现出来:

yyqbog -> blog -> admin.py

from django.contrib import admin 
from .models import Category, Article 


# Register your models here. 

@admin.register(Category) 
class ActicleTypeAdmin(admin.ModelAdmin): 
    list_display = ('id','category_name','category','category_des') 


@admin.register(Article) 
class ActicleAdmin(admin.ModelAdmin): 
    list_display = ('id', 'title', 'author', 'category','tag', 'created_time', 'last_edited_time') 

    # tag 必须用下面的两个自定义方法才能在后台显示出来 
    def get_queryset(self, request): 
        return super().get_queryset(request).prefetch_related('tags') 

    def tag(self, obj): 
        return u",".join(o.name for o in obj.tags.all()) 

此时,再次刷新博客admin页面,即可看到我们创建的表:

管理员页面

若是想切换为中文的话将settings.py中的LANGUAGE_CODE改为如下即可

LANGUAGE_CODE = 'zh-hans' 

这时候我们可以对其进行增加、修改、删除操作。

最后修改于2020年4月2日 22:39
©允许规范转载

版权声明:如无特殊说明,文章均为本站原创,转载请注明出处

本文链接:https://www.yyqblog.com/article/7.html

微信
支付宝
登录后即可进行评论/回复