【问题标题】:Output a Laravel variable within a javascript template在 javascript 模板中输出 Laravel 变量
【发布时间】:2023-04-01 12:08:02
【问题描述】:

我正在开发一个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}} 时,我得到一个错误。我想知道如何在循环中打印这个变量?

【问题讨论】:

  • $slideshow-&gt;find($slideshow-&gt;id) 这行一点意义都没有。如果你能做到$slideshow-&gt;id,你就不需要-&gt;find(),假设我们在这里谈论的是Eloquent 模型。
  • 还有@foreach($slideshow-&gt;find($slideshow-&gt;id)-&gt;slides()-&gt;take(1)-&gt;get() as $slide)这行没有多大意义,如果你只拿1件,@foreach有什么意义?

标签: javascript laravel laravel-4


【解决方案1】:

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

所以假设你已经传递了一个变量$slideshow 这是你的集合然后你可以这样做:

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

我不清楚 $id 在您的问题中与什么值相关。那是幻灯片的ID吗?如果它是那么只要它包含在循环中,你就可以通过 $slide->id

得到它

如果假设是错误的,你能确认 id 与什么相关

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-06
    • 2014-12-08
    • 2014-07-23
    • 2011-02-21
    • 2021-06-14
    • 1970-01-01
    • 2014-07-15
    相关资源
    最近更新 更多