文档章节

django修改admin下编辑的控件形式

子夜闻雪
 子夜闻雪
发布于 2015/12/29 11:12
字数 234
阅读 452
收藏 2

django的CharField在admin后台的默认展示方式时input的形式,有时我们需要修改成textarea用来优化输入。

我们可以在admin.py中做处理,以下例子:

第一种方式我们定义一下fromfield_overrides

from django.contrib import admin
class SchoolAdmin(admin.ModelAdmin):
   formfield_overrides = {models.CharField: {'widget': forms.Textarea},}


admin.site.register(School, SchoolAdmin)

这样之后,school的编辑页面的所有charfield的编辑方式都将变为textarea的形式,但我们也许需要指定特定的字段修改type


第二种 重写formfield_for_dbfield方法

class SchoolAdmin(admin.ModelAdmin):
   # formfield_overrides = {models.CharField: {'widget': forms.Textarea},}
   def formfield_for_dbfield(self, db_field, **kwargs):
      formfield = super(SchoolAdmin, self).formfield_for_dbfield(db_field, **kwargs)
      if db_field.name in ['intro', 'base_info']:
         formfield.widget = forms.Textarea(attrs=formfield.widget.attrs)
      return formfield

admin.site.register(School, SchoolAdmin)

    做一个fieldname的判断处理,这样就可以指定字段为指定类型


© 著作权归作者所有

共有 人打赏支持
子夜闻雪
粉丝 3
博文 37
码字总数 16415
作品 0
海淀
程序员
Django基础(5): Admin

陆续更新中: Django基础(1): 目录文件简介 Django基础(2): 创建应用 Django基础(3): 配置url Django基础(4): 建立Templates Admin是Django中自带的一个自动化数据管理界面,功能强大。被授权...

AryaHooper
2017/12/27
0
0
第六章 Django站点管理

第六章 Django站点管理 对于某一类网站, 管理界面 是基础设施中非常重要的一部分。 这是以网页和有限的可信任管理者为基础的界面,它可以让你添加,编辑和删除网站内容。 一些常见的例子: ...

阿帆提
2016/11/10
2
0
django实例:创建你的第一个应用投票系统(3)(4)

https://docs.djangoproject.com/en/1.5/intro/tutorial01/Django的管理面板默认是不开启的,所以我们需要进行一些设置工作 1、在INSTALLED_APPS里面把 django.contrib.admin 前面的注释去掉...

我的去哈哈
2014/02/14
0
0
django实例:创建你的第一个应用投票系统(3)后台管理

Django的管理面板默认是不开启的,所以我们需要进行一些设置工作 1、在INSTALLED_APPS里面把 django.contrib.admin 前面的注释去掉 2、运行 python manage.py syncdb ,建立和管理有关的表 3、...

DjangoChina
2013/06/01
0
3
【译】自己动手写Django app,第二部分【完】

原文地址:https://docs.djangoproject.com/en/1.4/intro/tutorial02/ 这个教程从教程一留下的东西开始的。我们继续网络调查应用程序同时我们将会关注Django的自动生成的管理站点。 (哲学:...

davidxp
2013/02/22
0
13

没有更多内容

加载失败,请刷新页面

加载更多

下一页

(三)Nginx配置·续

概述 前文写了关于Nginx环境配置,但是还没有完,接下来将会继续讲三个相关的配置 主要是以下三个 1.Nginx访问日志 2.Nginx日志切割 3.静态文件不记录日志和过期时间 Nginx访问日志 1.先看看...

杉下
今天
1
0
jquery创建类似于java的map

var map = {}; // Map map = new HashMap(); map[key] = value; // map.put(key, value); var value = map[key]; // Object value = map.get(key); var has = key in map; // boolean has = ......

SuperDabai
今天
0
0
java大数据转换16进制转10进制

public static void main(String[] args) {String hex = "0xdbf3accc683297cf0000";BigInteger amount = new BigInteger(hex.substring(2), 16);System.out.println(amount);......

任梁荣
昨天
2
0
OSChina 周六乱弹 —— 目测我们程序员丁克的几率不大

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @真Skr小机灵鬼儿:8.13分享Jocelyn Pook/Russian Red的单曲《Loving Strangers》 《Loving Strangers》- Jocelyn Pook/Russian Red 手机党少...

小小编辑
昨天
13
3
TypeScript基础入门 - 函数 - 剩余参数

转载 TypeScript基础入门 - 函数 - 剩余参数 项目实践仓库 https://github.com/durban89/typescript_demo.gittag: 1.2.1 为了保证后面的学习演示需要安装下ts-node,这样后面的每个操作都能...

durban
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部