2017-07-18 17 views
1

私は私がカテゴリモデルでこのlaravelでmodelname_idを使わずに関係を作る方法は?

Schema::create('posts', function (Blueprint $table) { 
 
      $table->increments('id'); 
 
      $table->string('title'); 
 
      $table->text('body'); 
 
      $table->integer('category_id'); 
 
      $table->timestamps(); 
 
     });
Postモデルで

public function Category() 
{ 
    return $this->belongsTo('App\Category'); 
} 

のように使用している場合は、データベースの列のためのポストとcategory.Andのための多くの関係に1を使用しようとしています

public function posts() 
{ 
    return $this->hasMany('App\Post'); 
} 

私が上記の方法を使用している場合のその作業$ table-> integer( 'catego ry_id ')私はを使用したい.Butカスタム名前よう $卓上>整数('

Schema::create('posts', function (Blueprint $table) { 
 
      $table->increments('id'); 
 
      $table->string('title'); 
 
      $table->text('body'); 
 
      $table->integer('cat_id'); 
 
      $table->timestamps(); 
 
     });
ようCATEGORY_ID使用.Iはlaravel 5.4を使用して、私を助けてくださいしていなしCAT_ID ') 。ありがとう。

答えて

2

あなたは多くの関係する一つのEloquent: RelationshipsにLaravelのサイトをチェックアウトする場合は、あなたが表示されます:

hasOneの方法と同様に、あなたはまたに追加の引数を渡すことで、外国や地元のキーを無効にすることができますhasManyの方法:

return $this->hasMany('App\Comment', 'foreign_key'); 

return $this->hasMany('App\Comment', 'foreign_key', 'local_key'); 

は、これはまた、多くの関係にちょうど逆の一つである$this->belongsToの場合です。だからあなたの場合:

+0

私が上記のように使用し、私の見解では{{$ post-> category-> name}}のように使用すると、オブジェクト " –

+0

あなたの投稿を取得するときに熱心な読み込みを使用していますか? 'Post :: with( 'Category')'のようなもの? – Daniel

+0

$ posts = Post :: orderBy( '​​id'、 'desc') - >ページ区切り(10); 戻るビュー( 'posts.index'、compact( 'posts'));このような? –

関連する問題