Python 将django sorl缩略图与django表单utils一起使用
如何在django表单UTIL中实现sorl缩略图 因此,表单utils文档对其ImageWidget作了如下说明: (缩略图仅在以下情况下可用: 安装了sorl缩略图;否则 将显示全尺寸图像) 然而,我似乎无法实现它。我尝试在模型中使用sorl的ImageField,它破坏了utils的ImageWidget表单,我无法在模板中使用它,因为模板中只有以下内容:Python 将django sorl缩略图与django表单utils一起使用,python,django,django-forms,sorl-thumbnail,Python,Django,Django Forms,Sorl Thumbnail,如何在django表单UTIL中实现sorl缩略图 因此,表单utils文档对其ImageWidget作了如下说明: (缩略图仅在以下情况下可用: 安装了sorl缩略图;否则 将显示全尺寸图像) 然而,我似乎无法实现它。我尝试在模型中使用sorl的ImageField,它破坏了utils的ImageWidget表单,我无法在模板中使用它,因为模板中只有以下内容: <li class="field_upload"> {{ form.image.errors }} <
<li class="field_upload">
{{ form.image.errors }}
<label for="id_image" class="top">{{ form.image.label }}</label>
{{ form.image }}
</li>
{{form.image.errors}
{{form.image.label}
{{form.image}
form utils有一个选项,说明:
ImageWidget接受关键字
参数,模板。这是一根绳子
定义图像缩略图和
将呈现文件输入小部件
相对的,相对的。模板
字符串应包含变量
插值标记%(输入)和
%(图片)s。默认值为
%(输入)s%(图像)s 在代码中,它是这样的:
pic = forms.ImageField(
widget=ImageWidget(template='%(image)s<br />%(input)s'))
pic=forms.ImageField(
widget=ImageWidget(模板='%(图像)s
%(输入)s'))
但我仍然无法理解。在表单类定义中,您将
ImageField
命名为pic
,但在模板中,您尝试使用form.image
引用该字段
现在尝试使用标准的Django表单呈现程序,将{{form}}
放入模板中——如果这样做有效,那么您就知道这只是模板设置的问题
SORL缩略图库应该只需要在Django项目的Python路径(以及Python图像库)上可以访问 要检查这些库是否可用于Django项目,请转到项目的根目录并运行
$ python manage.py shell
>> import sorl.thumbnail
>> import PIL
如果这两个导入都没有抛出ImportError
s,则它们已正确安装
另外,可能还包括一些代码,比如在
forms.py
中定义的整个表单