【问题标题】:Laravel 4 - get images of item in blade viewLaravel 4 - 在刀片视图中获取项目的图像
【发布时间】:2014-12-14 04:48:56
【问题描述】:

我是 Laravel 的新手,遇到了一个菜鸟问题。我有 3 个表,用户,项目,item_images。当我发布一个项目时,我将图像与 item_id 和其他输入数据一起保存到 item_images 到项目表中。现在,如何在我的 foreach 循环中获取该项目的 x 个图像中的第一个?

这是我的看法

@foreach ($items as $item)

    <div class="item">
        <div class="item-image">  
            <img src="/uploads/{{ $item->image }}"/>
        </div>
        {{ $item->title }}

        {{ $item->type }}
        {{ $item->label }}
    </div>
@endforeach

这是 ItemImages 控制器

<? class ItemImages extends Eloquent {

    protected $fillable = array(
        'item_id',
        'image'
    );

    protected $table = 'item_images';

    public function item() {
        return $this->belongsTo('Item');
    }

}

项目控制器

<? class Item extends Eloquent {

    protected $fillable = array(
        'user_id',
        'type',
        'title',
        'label'
    );

    protected $table = 'items';

    public function item() {
        return $this->hasMany('ItemImages');
    }

}

还有家庭控制器

<?php class HomeController extends BaseController {

public function home() {

    $items = Item::all();
    $images = ItemImages::all();
    $users = User::orderByRaw("RAND()")->take(2)->get();

    return View::make('home', array(

        'items' => $items,
        'users' => $users,
        'images' => $images
    ));

}

}

提前致谢。

【问题讨论】:

  • 请尝试$item-&gt;item-&gt;first()-&gt;id
  • 谢谢。这有助于结合正确的关系:)
  • 关系看起来正确。您应该在 home 方法中仅查询用户或仅查询项目,具体取决于您要迭代的内容。
  • 我两者都需要,想在主要内容中显示所有用户的所有项目,在侧边栏中显示随机用户的所有项目。
  • @BenSen,如果以下答案之一回答了您的问题,本网站的工作方式,您将“接受”答案,更多信息请点击此处:What should I do when someone answers my question?。但前提是您的问题确实得到了回答。

标签: laravel laravel-4


【解决方案1】:

看起来您还没有定义关系。我相信这样做会使答案比以下简单得多:

<img src="/uploads/{{ 
    $images->filter(function($image) use( $item ) {
        return $image->item_id == $item->id;
    })->values()->image 
}}"/>

【讨论】:

  • 我有,但我认为他们错了。我想我需要花几个小时在人际关系上。谢谢你的回答。
猜你喜欢
  • 2013-08-03
  • 1970-01-01
  • 2020-09-13
  • 2018-02-10
  • 2013-07-29
  • 2015-01-20
  • 1970-01-01
  • 2013-06-03
  • 2015-02-17
相关资源
最近更新 更多