2
我想知道如何從3個表創建關係。如何創建多對多的關係3模型laravel 4
這裏是我的模型結構:
用戶模型
class User extends Eloquent {
public function Posts(){
return $this->hasMany('Post');
}
public function comments(){
return $this->hasMany('comment');
}
}
class Post extends Eloquent {
public function comments() {
return $this->hasMany('Comments');
}
public function user(){
return $this->belongsTo('user');
}
}
class Comments extends Eloquent {
public function user(){
return $this->belongsTo('user');
}
public function Post(){
return $this->belongsTo('Post');
}
}
用戶可以有很多崗位,每個崗位都有來自用戶的很多評論。
我想抓從後與用戶誰張貼評論
$comments = Post::find(1)->comments()->get();
foreach ($comments as $comment) {
// here my code now to get the user
$comment->user()->get()
}
所有意見的結果:
[
{
id: "1",
post_id: "1",
user_id: "1",
reply_text: "Testing",
},...
]
我認爲這不是有效的。
我怎樣才能使這更簡單的像:
[
{
id: "1",
post_id: "1",
user_id: "1",
reply_text: "Testing",
user_post: {
id: 1,
name: "Edi vianika",
profil_img: "l.jpg"
}
}
]
查看文檔中有關[Eager Loading](http://laravel.com/docs/eloquent#eager-loading)的部分,看看是否回答任何你的問題。你不需要使用'$ comment-> user() - > get()'關係。 –
謝謝@PhillSparks ..多數民衆贊成在我工作'返回鳴叫::與('用戶') - > get();'真正有用。 – edivianika