Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将django sorl缩略图与django表单utils一起使用_Python_Django_Django Forms_Sorl Thumbnail - Fatal编程技术网

Python 将django sorl缩略图与django表单utils一起使用

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 }} <

如何在django表单UTIL中实现sorl缩略图

因此,表单utils文档对其ImageWidget作了如下说明:

(缩略图仅在以下情况下可用: 安装了sorl缩略图;否则 将显示全尺寸图像)

然而,我似乎无法实现它。我尝试在模型中使用sorl的ImageField,它破坏了utils的ImageWidget表单,我无法在模板中使用它,因为模板中只有以下内容:

<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
    中定义的整个表单