【问题标题】:Media Finder display Image on Front End媒体查找器在前端显示图像
【发布时间】:2018-06-01 17:59:19
【问题描述】:

我创建了模型和数据库,并且可以使用媒体查找器上传图像。

我在fields.yamal 中将媒体查找器字段设置为photo

但是上传后,照片栏中没有图片路径保存到数据库中。


数据库表

  • id(整数)
  • 标题(字符串)
  • 照片(字符串)

树枝

{% for product in builderListCatalog.records %}
    {{ product.title }}
    <img src="{{ product.photo }}" />
{% endfor %}

这成功显示了标题但没有显示照片路径,因为它在数据库中是空的。

【问题讨论】:

  • 你能从图像ID加上文件扩展名和图像文件夹位置重建路径吗..
  • @numbtongue 我不知道从哪里开始了解如何执行此操作或如何获取图像 ID。我不知道为什么数据库不会保存路径,即使在 10 月之后弹出一个说 Media Finder 需要一个数据库表才能使用的弹出窗口。
  • @numbtongue 我正在使用public $attachOne 并有一个数据库表,但上传图像后路径未保存到数据库。
  • 我不完全理解,但在链接中它说你需要添加一个以dB为单位的字段来记录图像路径stackoverflow.com/a/48582780/3254405

标签: laravel octobercms octobercms-backend


【解决方案1】:

您需要删除所有添加到that field from model 的关系。

您正在使用public $attachOn 删除它是问题现在它被视为文件附件关系不是查找器图像,因此它不会在其中存储图像路径photo (string) 表中的字段

如果您使用media finder,您只需添加普通 string (photo) 表中的字段无需在模型中添加任何关系,它只会存储@987654326 @ 在那个领域for ex. /someimage.png

现在可以在front-end 中显示它,您可以使用

<img src="{{ model.photo|media }}" />

在组件部分你可以使用

<img src="<?php echo 'https://october-plaza.com/storage/app/media/' . $model->photo ?>" />

如有任何疑问,请发表评论。

【讨论】:

  • 它现在正在工作。看起来$ 在树枝中不起作用。 {{ record.photo|media }} 有效。我也经常看到&lt;?=,但它不起作用,我必须使用&lt;?php
  • 对不起,我在twig 中添加了php code,并更正了{{model.photo|media}} 谢谢@MattMcManis
  • 是的,在 FE php will not work it has to be twig i guess,但在 components 部分你可以使用 php :)
猜你喜欢
  • 1970-01-01
  • 2016-10-19
  • 2016-11-30
  • 2014-03-11
  • 2021-10-12
  • 1970-01-01
  • 1970-01-01
  • 2017-01-11
  • 2015-05-07
相关资源
最近更新 更多