2016-08-22 6 views
2

コントローラ方法:モデルで関係hasOneのコントローラでの作業ではなく、ブレードで

public function panorama($id) 
{ 
    $order = ClientOrder::find($id); 
    $products = ClientProduct::where('client_order_id', $order->id)->with('product')->get(); 
    $conteo = count($products); 

    return view('add.preview.work_panorama', compact('order', 'products', 'conteo')); 
} 

関係:ビュー$プロセスで

@foreach($products as $product) 
    <ul class="list-unstyled"> 
     {{ $product->product->name }} 
     @foreach($product->processes as $process) 
      <li>-{{ $process->name }}</li> 
     @endforeach 
    </ul> 
@endforeach 

:ブレード上

public function product() 
{ 
    return $this->hasOne('App\Product', 'id', 'product_id'); 
} 

見ます - > nameは動作しますが、$ product-> product-> nameは空白を表示しますが、コントローラには製品名が表示されます。

+0

あなたは '$製品 - >製品 - > NAME'と' $ PROCESS-> NAME'を意味は同じですが、 '$製品 - >製品 - >は右に、空白を返すNAME'? –

+0

商品コードを掲載することはできますか? –

+0

どのようなエラーメッセージが表示されますか? –

答えて

0

データベースのコレクションオブジェクトを返します。このようなインデックスを使用してみてください。

{{ $product->product[0]->name }} 
0

私はコンパクトで同じ問題を抱えていました。私は以下のコードで変更しました。

return \View::make('add.preview.work_panorama')->with('order', $order) 
               ->with('products', $products) 
               ->with('conteo', $conteo); 
関連する問題