django ModelForm修改显示缩略图 imagefield类型的实例

yipeiwu_com7年前Python基础

在使用django的modelform的时候,修改表单,图片在form表单显示的是一个链接。显示缩略图如下

第一步:

from django.forms.widgets import ClearableFileInput
 
 
class ImageWidget(ClearableFileInput):
 
  template_with_initial = (
    '%(initial_text)s: <a href="%(initial_url)s" rel="external nofollow" ><img width="100px" height="100px" src="%(initial_url)s"></a> '
    '%(clear_template)s<br />%(input_text)s: %(input)s'
  )
 
  template_with_clear = ''

图片的form组件使用

ClearableFileInput

继承它,重写里面一个属性。

第二步:使用这个样式组件

class XXXForm(forms.ModelForm):
 
  class Meta:
    model = XXX
    exclude = ['XXX', 'is_XXX']
    widgets = {'backend_image':ImageWidget}

以上这篇django ModelForm修改显示缩略图 imagefield类型的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python requests模块实例用法

1、Requests模块说明 Requests 是使用 Apache2 Licensed 许可证的 HTTP 库。用 Python 编写,真正的为人类着想。 Python 标准库中的 u...

python分块读取大数据,避免内存不足的方法

如下所示: def read_data(file_name): ''' file_name:文件地址 ''' inputfile = open(file_name, 'rb'...

Python lxml模块安装教程

lxml是Python中与XML及HTML相关功能中最丰富和最容易使用的库。lxml并不是Python自带的包,而是为libxml2和libxslt库的一个Python化的绑定。它与众不...

Python调用C语言开发的共享库方法实例

在helloworld工程中,编写了一个简单的两个数值相加的程序,编译成为共享库后,如何使用python对其进行调用呢? 使用ll命令列出当前目录下的共享库,其中共享库名为libhell...

python内存动态分配过程详解

python内存动态分配过程详解

一、前言 大多数编译型语言,变量在使用前必须先声明,其中C语言更加苛刻:变量声明必须位于代码块最开始,且在任何其他语句之前。其他语言,想C++和java,允许“随时随地”声明变量,比如...