文档章节

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

子夜闻雪
 子夜闻雪
发布于 2015/12/29 11:12
字数 234
阅读 458
收藏 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 操作数据库三

null 如果为 True ,Django 将用 NULL 来在数据库中存储空值。 默认值是 False . blank 如果为 True ,该字段允许不填。默认为 False 。在Django admin 中是否为空 要注意,这与 null 不同。...

明月知心
2016/12/08
23
0

没有更多内容

加载失败,请刷新页面

加载更多

wordpress 汉化

在 wp-config.php 添加 define('WPLANG','zh_CN'); 在后台,更新 now ,即可。

james_laughing
27分钟前
1
0
Android JNI开发系列(十一) JNI 访问父类的构造方法和父类实例方法

JNI 访问父类的构造方法和父类实例方法 构造方法和父类实例方法 先看一段Java代码, Java package org.professor.jni.animal;import android.util.Log;public class Animal {protecte...

蔡小鹏
33分钟前
2
0
腾讯投资最高1.75亿美元正式进军菲律宾移动支付市场

菲律宾长途电话公司(PLDT)公司今日宣布,中国互联网巨头腾讯和私募股权公司KKR将获得该公司旗下金融科技公司Voyager Innovations的少数股权。 PLDT在一份声明中称:“腾讯和KKR最多将分别收...

linuxCool
今天
3
0
正则介绍及grep/egrep用法

10月16日任务 9.1 正则介绍_grep上 9.2 grep中 9.3 grep下 扩展 把一个目录下,过滤所有*.php文档中含有eval的行 grep -r --include="*.php" 'eval' /data 正则介绍 正则就是一串有规律的字符...

hhpuppy
今天
4
0
J2Cache 中使用 Lettuce 替代 Jedis 管理 Redis 连接

一直以来 J2Cache 都是使用 Jedis 连接 Redis 服务的。Jedis 是一个很老牌的 Redis 的 Java 开发包,使用很稳定,作者维护很勤勉,社区上能搜到的文章也非常非常多。算是使用范围最广的 Redi...

红薯
今天
21
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部