Plugins 十月CMS |如何从后端文件上传程序获取组件中的映像路径?

Plugins 十月CMS |如何从后端文件上传程序获取组件中的映像路径?,plugins,octobercms,Plugins,Octobercms,因此,我有我的插件设置(或者我相信是这样),但由于某种原因,在default.htm文件中,我无法使用文件上传小部件获取通过后端上传的图像路径 例如:不会向我显示图像的路径,但如果我显示了或,我确实获得了图像的路径,但这并不理想,因为我想显示多个图像 我有一种感觉,我错过了一些非常简单的东西,但请原谅我的无知,因为我对10月份非常陌生 先谢谢你 components/gallerys/default.htm: {% set gallerys = __SELF__.gallery %} <

因此,我有我的插件设置(或者我相信是这样),但由于某种原因,在default.htm文件中,我无法使用文件上传小部件获取通过后端上传的图像路径

例如:
不会向我显示图像的路径,但如果我显示了
,我确实获得了图像的路径,但这并不理想,因为我想显示多个图像

我有一种感觉,我错过了一些非常简单的东西,但请原谅我的无知,因为我对10月份非常陌生

先谢谢你

components/gallerys/default.htm:

{% set gallerys = __SELF__.gallery %}

<ul>
{% for gallery in gallerys %}

<li>{{ gallery.uploads.path }}</li>

{% endfor %}
</ul>
models/fields.yaml:

fields:
name:
label: Name
span: auto
type: text
uploads:
    label: Upload
    span: full
    mode: image
    useCaption: true
    thumbOptions:
        mode: crop
        extension: auto
    imageWidth: '200'
    imageHeight: '200'
    type: fileupload

你真的很接近得到它。以下是我认为正在发生的事情。您正在从模型中检索项目数组(
{%for gallerys%}
)。现在,模型中的每个项目都可以接受一个图像数组,因为您正在使用
$attachMany
{%for image in gallery.uploads%}
)。因此,当您调用
{{plugin.upload.first.path}}
{{plugin.upload.[0].path}
时,您正在拍摄数组的第一张图像并获取路径

因此,您需要做的就是:

{% set gallerys = __SELF__.gallery %}

<ul>
{% for gallery in gallerys %}

    {% for image in gallery.uploads %}

    <li>{{ image.path }}</li>

    {% endfor %}

{% endfor %}
</ul>
{%set gallerys=\uuuu SELF\uuuu.gallery%}
    {%用于gallerys%中的图库} {%用于gallery.uploads%中的图像}
  • {{image.path}
  • {%endfor%} {%endfor%}

一个很棒的插件可以帮助你调试OctoberCMS是Twig Dump+(还有一个是Twig Dump,它也可以工作,但我喜欢Twig Dump+)。这允许您编写
{{d(gallery.uploads)}
来查看对象的转储。

您就快得到它了。以下是我认为正在发生的事情。您正在从模型中检索项目数组(
{%for gallerys%}
)。现在,模型中的每个项目都可以接受一个图像数组,因为您正在使用
$attachMany
{%for image in gallery.uploads%}
)。因此,当您调用
{{plugin.upload.first.path}}
{{plugin.upload.[0].path}
时,您正在拍摄数组的第一张图像并获取路径

因此,您需要做的就是:

{% set gallerys = __SELF__.gallery %}

<ul>
{% for gallery in gallerys %}

    {% for image in gallery.uploads %}

    <li>{{ image.path }}</li>

    {% endfor %}

{% endfor %}
</ul>
{%set gallerys=\uuuu SELF\uuuu.gallery%}
    {%用于gallerys%中的图库} {%用于gallery.uploads%中的图像}
  • {{image.path}
  • {%endfor%} {%endfor%}

一个很棒的插件可以帮助你调试OctoberCMS是Twig Dump+(还有一个是Twig Dump,它也可以工作,但我喜欢Twig Dump+)。这允许您编写
{{d(gallery.uploads)}
来查看对象的转储。

太棒了!我知道我错过了一些明显的东西!另外,非常感谢你在小树枝垃圾场的建议,这会派上用场的!谢谢,太棒了!我知道我错过了一些明显的东西!另外,非常感谢你在小树枝垃圾场的建议,这会派上用场的!非常感谢。
fields:
name:
label: Name
span: auto
type: text
uploads:
    label: Upload
    span: full
    mode: image
    useCaption: true
    thumbOptions:
        mode: crop
        extension: auto
    imageWidth: '200'
    imageHeight: '200'
    type: fileupload
{% set gallerys = __SELF__.gallery %}

<ul>
{% for gallery in gallerys %}

    {% for image in gallery.uploads %}

    <li>{{ image.path }}</li>

    {% endfor %}

{% endfor %}
</ul>