Я слежу за laracast и достиг той части, которую не могу понять. При попытке отобразить заголовок {{$blog->title}}
я получаю следующую ошибку:
При попытке получить свойство 'title' необъекта (View: / Users / *** / Desktop / DigitalCulture / DG /resources/views/blogs/show.blade.php) "
База данных:
public function up()
{
Schema::create('blogs', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('title');
$table->text('excerpt');
$table->text('body');
$table->timestamps();
});
}
Маршрут:
Route::get('/', function () {
return view('welcome');
});
Route::get('/about', function () {
$blogs = DB::table('blogs')->take(3)->latest()->get();
return view('/about', [
'blogs' => $blogs
]);
});
Route::get('/blogs/{blog}', 'BlogsController@show');
Контроллер
<?php
namespace App\Http\Controllers;
use App\blog;
use Illuminate\Http\Request;
class BlogsController extends Controller
{
public function show($id)
{
$blog = Blog::find($id);
if( is_null($blog) ){
dd( 'There is no post with this id='.$id);
}
return view('blogs.show')->with('blog', $blog);
}
}
Show.blade
@extends ('layout')
@section ('content')
<div id="wrapper">
<div id="page" class="container">
<div id="content">
<div class="title">
<h2> {{$blog->title}} </h2>
</div>
<p><img src="/images/banner.jpg" alt="" class="image image-full" /> </p>
<p>
{{$blog->body}}
</p>
</div>
</div>
</div>
@endsection
Блог PHP
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Blog extends Model
{
//
}
БАЗА ДАННЫХ
[https://i.stack.imgur.com/yswTb.png] [1]