@foreach ($wishItems as $wishItem)
<?php $products = Product::find($wishItem->product_id)->get(); ?>
@foreach($products as $product)
@if($product->id == $wishItem->product_id)
Name: <a href="{{ URL::route('product', $product->id) }}"> {{ $product->title }} </a><br>
Price: {{ $product->price }} €<br>
<hr>
@endif
@endforeach
@endforeach
$wishItems
是发送到此视图的 var,没关系...... $products = Product::find($wishItem->product_id)->get();
在这里我有问题..我得到错误: Call to a member function get() on a non-object
....我试图用数字替换$wishItem->product_id
例如3
[它存在于数据库中]但同样......
我假设你真正想要的是:
@foreach ($wishItems as $wishItem)
<?php $product = Product::find($wishItem->product_id); ?>
Name: <a href="{{ URL::route('product', $product->id) }}"> {{ $product->title }} </a><br>
Price: {{ $product->price }} €<br>
<hr>
@endforeach
您的$wishItem
实际上只是引用单个产品,因此您无需查询集合并执行循环。
假设您有一个愿望项和产品模型
class WishItem extends Eloquent {
public function product()
{
return $this->hasOne('Product');
}
}
在您看来
$product = $wishItem->product;
更多信息:
http://laravel.com/docs/eloquent#basic-usage