首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel文章图像幻灯片

问Laravel文章图像幻灯片
EN

Stack Overflow用户
提问于 2018-08-23 08:40:16
回答 2查看 3.1K关注 0票数 0

我有一个Laravel项目,您可以在这里创建文章等等。当然,我希望每一篇文章都有一个包含多个图像的图像幻灯片。我设法通过内爆将多个图像保存在一个列中。图片

现在如何显示幻灯片?我没有头绪。

​

​

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-23 08:56:37

简短的答案是@Sang发布的一句话:与implode()相反的是explode()。

不过,我要添加一种更像“Laravel式”的方法:

假设您有一个Article模型,那么添加一个访问器:

代码语言:javascript
复制
class Article extends Model {
    ...
    public function getImagesListAttribute() {
        return collect(explode('|', $this->images));
    }
    ...
}

然后:

代码语言:javascript
复制
$article = Article::find(1);

var_dump($article->images_list); //would be a Collection of strings (which are your image names)

更多关于访问器的信息:https://laravel.com/docs/5.6/eloquent-mutators#defining-an-accessor

更多关于集合的信息:https://laravel.com/docs/5.6/collections

票数 0
EN

Stack Overflow用户

发布于 2018-08-23 08:51:18

您只需要从数据库中explode数据,然后显示它。

代码语言:javascript
复制
$images = explode('|', $post->image);

@foreach ($images as $image)
   <img src="{{ url($image) }} alt="image" />
@endforeach

然后可以使用OwlCarousel https://owlcarousel2.github.io/OwlCarousel2/创建幻灯片。

可以使用此示例https://owlcarousel2.github.io/OwlCarousel2/demos/basic.html创建基本滑块。

例:在你的刀片视图中

代码语言:javascript
复制
<div class="owl-carousel owl-theme">
    @foreach (explode('|', $post->image) as $image)
       <div class="item"><img src="{{ url($image) }} alt="image" /></div>
    @endforeach
</div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51981587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档