2016-10-23 5 views
0

投稿、カテゴリ、コメント、コメント返信を予定しているブログを作成しています。Laravel 5.3:ブログ用のPostCommentsControllerを作成する

で、私は次のことを抱えている瞬間

PostCommentsController.php

public function show($id) 
{ 
    $post = Post::findOrFail($id);  
    $comments = $post->blog_comments; 
    return view('admin.comments.show', compact('comments')); 
} 

私の問題は、私はこれ、postIDのテーブルポストの内側に列を変更した、あります$ idを使用している間、Laravelのpost_idで予想されるものとは異なります。

この場合、この作業を進めるにはどうすればよいですか?

+0

を変更する必要がありますプライマリインデックスがidからpostIDに変更されましたか? –

答えて

1

これを試してみてください。モデルpost.php、BlogComment.phpがあると仮定しています。モデルファイルpost.phpで

public function blog_comments() 
{ 
    return $this->hasMany(BLogComments::class,'postID') 
} 

これは私が右理解していれば、あなたはどのモデルのクラスで主キーを選択することができます

+0

は確かに、私はPostモデルのこの内部抱えている: ' パブリック関数のコメント(){ リターンます$ this-> hasManyの( 'アプリケーション\コメントを'); } は、次のようにすべての機能のために再調整し、できるだけ早く結果をお知らせします: パブリック関数のコメント(){ リターンます$ this-> hasManyの(「アプリケーション\コメント」、 'postID'); } ' – brotherperes

+0

はPostIDの第2引数を渡します。そうでなければ、あなたが指定したとおりにlaravelのデフォルト値をとります。tableName_id(post_id) – Vikash

+0

ありがとうございました! – brotherperes

0

を助けることを願っていますが、ちょうどあなたが意味する変数

protected $primaryKey = 'id'; // For you case it will be 'post_id' 
+0

クラス投稿はモデル { // 保護$テーブル= 'blog_posts'; 保護された$ primaryKey = 'blogPostID'; – brotherperes

関連する問題