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. 实战ELK(5) Logstash 入门

    Logstash 是一个开源的数据收集引擎,它具有备实时数据传输能力.它可以统一过滤来自不同源的数据,并按照开发者的制定的规范输出到目的地. 一.原理 Logstash 通过管道进行运作,管道有两个必 ...

  2. sql server driver ODBC驱动超时

  3. centos7使用rpm方式安装mysql

    https://blog.csdn.net/smiles13/article/details/81460617    (部分参考) 先查看是否安装mariadb rpm -qa | grep mari ...

  4. Delphi中Chrome Chromium、Cef3学习笔记(三)

    原文   http://blog.csdn.net/xtfnpgy/article/details/46635871   Delphi与JS的交互问题: 一.执行简单的JS 上一篇已经讲过: chrm ...

  5. 记一个jquery 无缝轮播的制作方法

    接触前端也很久了,今天才发现,要做好一个轮播,其实有很多东西需要考虑进去,否则做出来的轮播效果并不好,下面我就来做一个轮播,是依赖jquery来写的 1.要做轮播,首先需要的是HTML的内容,css的 ...

  6. Linux下编译安装FFmpeg

    FFmpeg官网:http://www.ffmpeg.org 官网介绍 FFmpeg is the leading multimedia framework, able to decode, enco ...

  7. 从一个简单的约束看规范性的SQL脚本对数据库运维的影响

    之前提到了约束的一些特点,看起来也没什么大不了的问题,http://www.cnblogs.com/wy123/p/7350265.html以下以实际生产运维中遇到的一个问题来说明规范的重要性. 如下 ...

  8. 微信小程序--数据存储

    对本地缓存数据操作分为同步和异步两种.同步方法有成功回调函数,表示数 据处理成功后的操作.下面是小程序提供本地缓存操作接口: 以Sync结尾都是同步方法.同步方法和异步方法的区别是: 同步方法会堵塞当 ...

  9. eclipse修改工作目录颜色

    转载请注明本地址,http://blog.csdn.net/u013173247/article/details/41676495 经常用Eclipse的朋友都应该清楚,Eclipse的白背景不知道晃 ...

  10. Linux redhat 7 进入单用户模式

    redhat  7 进入单用户模式修复系统故障 1.启动机器,grub界面选择第一个,按e 2.往下翻,找到Linux16 开头的那一行 3.将ro改为"rw init=/sysroot/b ...