Django admin

Django强大的功能之一就是提供了Admin后台管理界面,简单配置就可以对数据库内容做管理

创建ModelAdmin并注册

from django.contrib import admin
from . import models # version 1
admin.site.register(models.Author) # version 2
class AuthorAdmin(admin.ModelAdmin):
pass
admin.site.register(models.Author, AuthorAdmin) # version 3
@admin.register(models.Author)
class AuthorAdmin(admin.ModelAdmin):
pass

说明:

  • django启动时,会自动去app下寻找admin模块,生成后台页面
  • 自动根据model的Field类型设置Form类型

配置ModelAdmin

  • label名称,定义Model Field是指定verbose_name

  • 排除某些字段 exclude

  • 显示有些字段 fields

  • 搜索某列 search_fields

  • 添加日期标签过滤 date_hierarchy

  • 排序 ordering

  • 列表显示更多列 list_dispaly

# 当出现多个字段含义,list_display展示时
def display_book_authors(obj):
return ','.join([author.first_name for author in obj.authors.all() ]) display_book_authors.short_description = 'Authors' # 展示列明 @admin.register(models.Book)
class BookAdmin(admin.ModelAdmin):
fields = ('title', 'authors', 'publisher')
search_fields = ('title', 'authors')
date_hierarchy = 'publication_date'
ordering = ('-id', 'publication_date',)
list_display = ['title', 'publisher', display_book_authors, 'publication_date']

配置Action

def make_book_pub_date_now(modeladmin, request,queryset):
queryset.update(publication_date=datetime.datetime.now()) @admin.register(models.Book)
class BookAdmin(admin.ModelAdmin):
list_display = ['title', 'publisher', 'publication_date']
actions = [make_book_pub_date_now]

Django Admin 专题的更多相关文章

  1. 4-初识Django Admin

    初识Django Admin Django Admin是Django为我们提供的网站后台管理应用,通常网站,个人博客,CMS等都会有个后台管理界面,这个界面只有管理员权限的用户才能进入管理网站内容.管 ...

  2. Django admin美化插件suit应用[原创]

    前言 由于比较懒,自己弄了一个用户验证,没有自己写后台,用了django自带的user认证,并通过admin直接进行管理,但默认的admin并不漂亮,于是使用了这个django-suit插件,效果对比 ...

  3. Django admin 权威指南(一)

    版本: Django 1.10 此部分由官方文档<6.5.1 The Django admin site>翻译而来. 6.5.1.1 概览 默认情况下,使用startproject的时候, ...

  4. Django admin 显示图片

    我有一个表用来储存轮播图片,有一个 `picture` 字段储存的是图片的url,图片的 url 通过上传文件到 cdn 获得.目前这个表的编辑是通过自定义一个 `ModelForm`,然后重写 Dj ...

  5. [系统开发] Django Admin上传图片简单校验

    我的 models里有个ImageField字段,用来保存用户头像,希望通过Django Admin上传时校验头像大小,如果太大就报错,并且不保存. 网上有不少方法,有的通过第三方软件实现,有的通过自 ...

  6. SQLAlchemy连接数据库并在django admin显示

    SQLAlchemy 0.7     postgersql  9.0 SQLAlchemy连接数据库有两种方法,一种是classic,一种是modern 1,modern方法 from sqlalch ...

  7. Django admin site(一)ModelAdmin Options

    Admin管理界面是django的杀手级应用.它读取你模式中的元数据,然后提供给你一个强大而且可以使用的界面,网站管理者可以用它立即向网站中添加内容. 要使用admin,可以按照下面的步骤: 将'dj ...

  8. Django Admin 简单部署上线

    前言 打算为公司弄一个管理公用密码的平台,由于比较懒,就选择使用Django admin,默认的admin并不漂亮,于是我使用了这个django-suit插件来美化 如图: 是不是比原来的漂亮多了. ...

  9. Django admin究竟要怎么写才优雅

    比如在Django admin 注册models时,会用到. 对于APP里自带的models,可以使用这种方式注册. from django.contrib import admin # Regist ...

随机推荐

  1. android 开发 更好的数据存放,回调,处理class模式,适合与各种布局适配器class一起使用

    预先导入数据模式: /** * Created by lenovo on 2018/5/18. */ public class DeivceListData { private DeivceListD ...

  2. RGB ECT 4BIT 压缩后质量远高于RGB ETC2 4BIT

    今天突然发现这个.原来以为ETC2在任何方面都强于ETC,没想到...用了RGB ETC2 4BIT 压缩的贴图看起来有点糊,改用RGB ECT 4BIT后竟然非常清晰,而且大小与RGB ECT2 4 ...

  3. join() ---- 使用四种不同的分隔符连接数组元素

    var a = ['Wind', 'Rain', 'Fire']; var myVar1 = a.join(); // myVar1的值变为"Wind,Rain,Fire" var ...

  4. Controller层aop

    利用@Around通知修改Controller的返回值 自定义一个注解@OperationBtn 在切入点Controller上加上自定义注解 接下来就是重点了,AspectJ写切面类,对该Contr ...

  5. Python实现EXCEL表格的排序功能

    EXCEL的数值排序功能还是挺强大的,升序.降序,尤其自定义排序,能够对多个字段进行排序工作. 那么,在Python大法中,有没有这样强大的排序功能呢?答案是有的,而且本人觉得Python的排序功能, ...

  6. cmd与linux使用curl差异

    其中在用windows下的cmd 进行curl命令,出现415报错,见下,请求头使用json形式,但报错却依然提示使用的是form表单形式: 一直以为问题出在springboot的转换器做string ...

  7. 如何编写Window服务程序(C# )

    虚拟需求:编写一个Window服务,并注册到操作系统的服务里.让他隔30秒运行一下(写当前日期到一个文本里) 步骤: 创建一个Window 窗体应用程序项目(Greatwall.Mes.Windows ...

  8. document.getElementById(“id”)与$("#id")的区别

    document.getElementById("id")可以直接获取当前对象, jQuery利用$("#id")获取的是一个[object Object],需 ...

  9. gcc 与 g++的区别

    原文: http://www.cnblogs.com/wb118115/p/5969775.html ------------------------------------------------- ...

  10. 【测试工具】Macaca 自动遍历器 NoSmoke

    Macaca 提供的基础能力上研发出了一套多端深度遍历爬虫工具. 希望可以最大化减少UI 测试脚本的编写涵盖以下功能点: 支持iOS, Android,PC-Web 三个平台的自动化测试 同时可以通过 ...