在javascript模板中输出Laravel变量

时间:2014-09-01 14:55:18

标签: javascript laravel laravel-4

我正在使用Laravel-4应用程序,我正在使用javascript templates来呈现特定页面上的项目。以下是我的幻灯片项目模板

<script type="t/template" id="bookItem">
        <div class="resource-wrap" data-resource="@{{=type}}">
            <div class="resource @{{=type}}">
                @{{id}}
                <div class="image">
                @foreach($slideshow->find($slideshow->id)->slides()->take(1)->get() as $slide)
                    <img width="100%" height="100%" src="/img/slideshows/{{$slide->link}}"/>
                @endforeach
                </div>
                @{{/id}}
                <ul class="info">
                    <li class="title"><a href="#">@{{=id}}@{{=title}}@{{=name}}</a></li>
                    <li><a href="#">@{{=desc}}</a></li>
                </ul>
                <a class="ov open-@{{=type}}" href="#"></a>
            </div>
        </div>
</script>

它在页面上呈现正常,一切正常,除了一件事。这一行:

@foreach($slideshow->find($slideshow->id)->slides()->take(1)->get() as $slide)

我正在尝试传递当前项目的ID,但似乎无法这样做。我可以在这里:

<li class="title"><a href="#">@{{=id}}@{{=title}}@{{=name}}</a></li>

但是当我在循环中使用@{{=id}}时,我收到错误。我想知道如何在循环中打印出这个变量?

1 个答案:

答案 0 :(得分:0)

我倾向于尝试避免在控制器中查询和查询,将集合传递给视图 - 使其在视图中更清晰。保持视图尽可能分开

因此,假设您已经传递了一个变量$slideshow,那么您可以这样做:

            <div class="image">
            @foreach($slideshow AS $slide)
                <img width="100%" height="100%" src="/img/slideshows/{{$slide->link}}"/>
            @endforeach
            </div>

我不清楚你的问题中$ id的价值。这是幻灯片的ID吗?如果它只要它包含在循环中,你可以通过$ slide-&gt; id

获得它

如果假设错误,您可以确认与

相关的ID