私のアプリでは友好的なURLを作成していますが、機能していないので、アプリは " - "に関するいくつかの問題を抱えています。 それは私のエラーを与えている:URLは友好的です
ErrorException in PostController.php line 60:
Trying to get property of non-object
私の理想的なURLは次のとおりです。
http://domain.com/CATEGORY-title-of-post-ID
私のルートは以下のとおりです。
Route::get('{category}-{title}-{id}', '[email protected]');
のPostControllerショー機能:
public function show($category,$title,$id)
{
$post = Post::find($id);
$user = Auth::user();
$comments = Comment::where('post_id',$id)
->where('approved',1)
->get();
return view('posts.show',compact('post','comments','user'));
}
ブレード表示:
<?php
$title_seo = str_slug($feature->title, '-');
?>
<a href="{{url($feature->categories[0]->internal_name."-".$title_seo."-".$feature->id)}}" rel="bookmark">
...</a>
こんにちは応答に感謝、私はちょうどそれを実装し、すでに私のデータベースに保存しますが、私は私のルートでそれを構造化する方法を一つの質問を持っているのですか?それでも私にはエラーが出ます。 – Pedro
'{category} - {title} - {id}'を使わなければならない理由はありますか?私はあなたがそれぞれダッシュで区切っているので、また使い捨ての使用もダッシュしていると考えているので、カテゴリが終了してタイトルが始まるときは分かりません。デフォルトの例のように 'title'を使用するなら、それをあなたのコントローラに渡し、' Posts :: where( 'slug'、$ slug) - > first(); 'を実行することができます。それでもカテゴリを使用したい場合は、スラッシュ( '/')を使用して区切ってルートに反映させるのが最善です – TimothyBuktu