Django:后台管理

使用Django的管理模块,需要按照如下步骤操作:

  1. 管理界面本地化
  2. 创建管理员
  3. 注册模型类
  4. 自定义管理页面

1.管理界面本地化

本地化是将显示的语言、时间等使用本地的习惯,这里的本地化就是进行中国化,中国大陆地区使用简体中文,时区使用亚洲/上海时区,注意这里不使用北京时区表示。

打开{{项目}}/settings.py文件,找到语言编码、时区的设置项,将内容改为如下:

LANGUAGE_CODE = 'zh-hans' #使用中国语言
TIME_ZONE = 'Asia/Shanghai' #使用中国上海时间

2.创建管理员

创建管理员的命令如下

python manage.py createsuperuser

按提示输入用户名、邮箱、密码

(dj_py3) python@ubuntu:~/Desktop/djproject3/demo1$ python manage.py createsuperuser
Username (leave blank to use 'python'): python
Email address: 123@qq.com
Password: 
Password (again): 
Superuser created successfully.
(dj_py3) python@ubuntu:~/Desktop/djproject3/demo1$ 

接下来启动服务器: python manage.py runserver

打开浏览器,在地址栏中输入如下地址后回车

http://127.0.0.1:8000/admin/

3.注册模型类

登录后台管理后,默认没有我们创建的应用中定义的模型类,需要在自己应用中的admin.py文件中注册,才可以在后台管理中看到,并进行增删改查操作

打开news/admin.py文件,编写如下代码

from django.contrib import admin
from .models import newsInfo
admin.site.register(newsInfo)

4.自定义管理页面

在列表页只显示出了NewsInfo object,对象的其它属性并没有列出来,查看非常不方便。 Django提供了自定义管理页面的功能,比如列表页要显示哪些值

复制代码
from django.contrib import admin
from .models import newsInfo

class newsInfoAdmin(admin.ModelAdmin):
    # list_display表示要显示哪些属性
    list_display = ['id','title','b_date']

admin.site.register(newsInfo,newsInfoAdmin)

或者是
@admin.register(newsInfo)
class newsInfoAdmin(admin.ModelAdmin):
    # list_display表示要显示哪些属性
    list_display = ['id','title','b_date']
复制代码

 

posted @   未来可期_Durant  阅读(22)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示