前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在后台管理模型

在后台管理模型

原创
作者头像
用户8442333
修改2021-05-20 14:39:34
1.1K0
修改2021-05-20 14:39:34
举报
文章被收录于专栏:python知识python知识
  1. 创建超级管理员账号。 (venv)$ python manage.py createsuperuser Username (leave blank to use 'hao'): jackfrued Email address: jackfrued@126.com Password: Password (again): Superuser created successfully.
  2. 启动Web服务器,登录后台管理系统。 (venv)$ python manage.py runserver 访问http://127.0.0.1:8000/admin,会来到如下图所示的登录界面。

登录后进入管理员操作平台。

至此我们还没有看到之前创建的模型类,需要在应用的admin.py文件中模型进行注册。

  1. 注册模型类。 (venv)$ cd hrs (venv)$ vim admin.py from django.contrib import admin from hrs.models import Emp, Dept admin.site.register(Dept) admin.site.register(Emp) 注册模型类后,就可以在后台管理系统中看到它们。
  1. 对模型进行CRUD操作。 可以在管理员平台对模型进行C(新增)R(查看)U(更新)D(删除)操作,如下图所示。 添加新的部门。

查看所有部门。

更新和删除部门。

  1. 注册模型管理类。 再次修改admin.py文件,通过注册模型管理类,可以在后台管理系统中更好的管理模型。 from django.contrib import admin from hrs.models import Emp, Dept class DeptAdmin(admin.ModelAdmin): list_display = ('no', 'name', 'location') ordering = ('no', ) class EmpAdmin(admin.ModelAdmin): list_display = ('no', 'name', 'job', 'mgr', 'sal', 'comm', 'dept') search_fields = ('name', 'job') admin.site.register(Dept, DeptAdmin) admin.site.register(Emp, EmpAdmin)

为了更好的查看模型数据,可以为Dept和Emp两个模型类添加__str__魔法方法。 from django.db import models class Dept(models.Model): """部门类""" # 此处省略上面的代码 def __str__(self): return self.name # 此处省略下面的代码 class Emp(models.Model): """员工类""" # 此处省略上面的代码 mgr = models.ForeignKey('self', on_delete=models.SET_NULL, null=True, blank=True, verbose_name='直接主管') # 此处省略下面的代码 # 此处省略上面的代码 def __str__(self): return self.name # 此处省略下面的代码 修改代码后刷新查看Emp模型的页面,效果如下图所示。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档