2015-08-31 6 views
1

Я следующий кодПопытка получить свойство не-объекта в Laravel

В контроллере

public function ViewPost($id) 
     { 
      $viewpost= Post::find($id); 
       return view('Guest.viewpost', ['viewpost'=>$viewpost]); 
     } 

Ввиду

@foreach($viewpost as $val) 

     <br> 
     Post title= 
     <a href="viewpost/{{$val->id}}" >{{$val->post_title}}</a> 
     <br> 
     Post content={{$val->post_content}} 
     <br> <br> 
     Featured Image=<img src="{{$val->featured_image}}" height="150" width="150"> 
     @endforeach 

Но выше код выдаст ошибку Trying to get property of non-object. так я попытался следующее путь

$val['post_title']; 

Вышеприведенный код не вызывает ошибку и не отображает вывод.

Если я печататься в контроллере отобразить его выход, но так же в представлении, если я напечатать это дает ошибку

print_r($viewpost); 

Я использую laravel 5.1. Может ли один скажите нам, что я делаю неправильно?
Спасибо.

Update

после предложения @ CodeRomeos.i может иметь возможность отображать изображение данных не загружается.

<img src="{{$val->featured_image}}" height="150" width="150"> 

<img src="uploads/penguin.jpg"> 

же работает в шоу зрения

+0

Можете ли вы опубликовать вывод print_r ($ viewpost); –

+0

@ GaneshGhalame.now working – vision

+0

большое вперед !!!!!!!! –

ответ

1

Обновить контроллер как этот

public function ViewPost($id) 
{ 
    $viewpost= Post::find($id)->first(); 
     return view('Guest.viewpost', ['viewpost'=>$viewpost]); 
} 

или

public function ViewPost($id) 
{ 
    $viewpost= Post::find($id)->get(); 
     return view('Guest.viewpost', ['viewpost'=>$viewpost]); 
} 

ли вернуться, если вы по-прежнему сталкиваются с проблемой.!

+0

Благодарю вас. Ваш второй ответ работает. Сначала даем ту же самую ошибку. Есть ли какая-то причина, потому что первая должна работать – vision

+0

Знаете, почему первый метод не работает – vision

+0

, если запись не найдена, то метод find() вернет нулевой объект и сначала() попытается получить запись с нуля, поэтому она генерирует исключение, но это не так в get() – CodeRomeos

Смежные вопросы