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

yipeiwu_com6年前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设计】。

相关文章

pycharm 使用心得(八)如何调用另一文件中的函数

实现步骤: 1. PyCharm, IDE有个Project setting图标,是给run图标做配置的,配置run file为myfile.py2.复制代码 代码如下:# ------...

在Python中使用列表生成式的教程

列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。 举个例子,要生成list [1, 2, 3, 4, 5, 6, 7...

Python+Selenium自动化实现分页(pagination)处理

场景 对分页来说,我们最感兴趣的是下面几个信息 总共有多少页 当前是第几页 是否可以上一页和下一页 代码 下面代码演示如何获取分页总数及当前页数、跳转到指定页数 #coding:u...

Python3之字节串bytes与字节数组bytearray的使用详解

字节串bytes 字节串也叫字节序列,是不可变的序列,存储以字节为单位的数据 字节串表示方法: b"ABCD" b"\x41\x42" ... 字节串的构造函数: bytes()...

Python通过future处理并发问题

Python通过future处理并发问题

future初识 通过下面脚本来对future进行一个初步了解: 例子1:普通通过循环的方式 import os import time import sys import re...