Django学习——后台管理

1.管理界面本地化

本地化是将显示的语言、时间等使用本地的习惯,这里的本地化就是进行中国化,中国大陆地区使用简体中文,时区使用亚洲/上海时区,注意这里不使用北京时区表示。
打开项目文件下的 settings.py 文件,找到语言编码、时区的设置项,将内容改为如下:

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

2.创建管理员

创建管理员的命令如下,按提示输入用户名、邮箱、密码。

python manage.py createsuperuser

在这里插入图片描述
接下来启动服务器

python manage.py runserver

在这里插入图片描述
打开浏览器,在地址栏输入如下地址回车。

http://127.0.0.1:8000/admin/

在这里插入图片描述
输入前面的用户名和密码,点击登录

登录后发现里面并没有显示任何类对象。

在这之前,我已经创建了一个“school”APP,并在其中创建好了两个模型类

school/models.py

class Teacher(models.Model):
    name = models.CharField(max_length=20)
    age = models.IntegerField()

class Student(models.Model):
    name = models.CharField(max_length=20)
    age = models.IntegerField()

但是登录成功后并没有发现两个模型类的入口,接下来我们进行第三步操作。
在这里插入图片描述

3.注册模型类

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

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

from django.contrib import admin
from school.models import Student,Teacher
# Register your models here.

admin.site.register(Teacher)
admin.site.register(Student)

在浏览器中刷新页面,就可以看到Student和Teacher的管理了
在这里插入图片描述
我们可以试着给模型类添加两个实例,这里我添加了两个Student实例:
name =“ 张三”,age = 18 和 name = “李四”,age = 19

然后添加了一个Teacher实例:
name = “吴老师”,age = 37

但是我们会发现,添加完成后它的显示界面是这样的,我们需要再一次点击进入才能看到里面的内容
在这里插入图片描述
在这里插入图片描述
这种查看方法非常的不方便,那么我们有没有办法去解决呢?
其实我们只要利用Djiango提供的自定义管理页面的功能就能解决了,接下来我来演示一下

  • 打开school/admin.py文件,自定义类,继承自admin.ModelAdmin类
  • 属性list_display表示要显示哪些属性
class StudentAdmin(admin.ModelAdmin):
    list_display = ['name','age']
  • 修改模型类school的注册代码如下:
admin.site.register(Teacher,TeacherAdmin)

最终school/admin.py文件代码如下:

from django.contrib import admin
from school.models import Student, Teacher
# Register your models here.

class StudentAdmin(admin.ModelAdmin):
    list_display = ['name','age']

class TeacherAdmin(admin.ModelAdmin):
    list_display = ['name','age']


admin.site.register(Teacher,TeacherAdmin)
admin.site.register(Student,StudentAdmin)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值