Django开发系列(二)

Django后台管理工具

Author: Sinpei
Date: 2018-4-24
CSDN: https://blog.csdn.net/u012581982
GitHub: https://github.com/sinpeilee/MyHome
Email: sinpeilee@163.com
期待大神拍砖,轻拍……怕疼


前言

Django提供了基于Web的管理工具。集成了管理后台。在管理后台中可以对我们自定义model进行CRUD操作,以及分页,条件筛选等操作。


admin管理后台使用流程

1. 确保基础配置

a) 在项目的settings.py文件中的INSTALLED_APPS中确保有django.contrib.admin。
b) 在项目的urls.py中确定如下:

urlpatterns = [
    url(r'^admin/', admin.site.urls)
]

c) 一切前提配置OK,可以运行开发服务器(python manage.py runserver),看到如下界面,就算配置成功。
admin_login.jpg


2.在创建额app的model中定义一个模型,以Student为例。

class Student(models.Model):
    name = models.CharField(max_length=20)
    sex = models.BooleanField()

    class Meta:
      db_table = 'student'

3.创建admin后台密码

$ python manage.py createsuperuser

create_superuser.jpg


4.登录管理后台,自定义模型进行CRUD操作

在管理后台中操作模型对象,需要在app的admin.py进行声明,以Student模型为例。

class StudentAdmin(admin.ModelAdmin):

    def set_sex(self):
        if self.sex:
            return '男'
        else:
            return '女'

    # 修改性别字段
    set_sex.short_description = '性别'
    # 显示选取字段
    list_display = ['id', 'name', set_sex]
    # 过滤
    list_filter = ['name']
    # 搜索
    search_fields = ['name']
    # 分页
    list_per_page = 2


admin.site.register(Student, StudentAdmin)

5.除了上述方式注册,还有装饰器写法

# 第二种注册方式,装饰器模式
@admin.register(Student)
class StudentAdmin(admin.ModelAdmin):

    def set_sex(self):
        if self.sex:
            return '男'
        else:
            return '女'

    # 修改性别字段
    set_sex.short_description = '性别'
    # 显示选取字段
    list_display = ['id', 'name', set_sex]
    # 过滤
    list_filter = ['name']
    # 搜索
    search_fields = ['name']
    # 分页
    list_per_page = 2

6.管理效果图

admin.jpg

student的CRUD

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值