时间:2021-07-01 10:21:17 帮助过:13人阅读
posts
id - integer
title - string
body - text
comments
id - integer
post_id - integer
user_id - integer
body - text
users
id - integer
name - string
phone - integer
sex - integer
comment_likes
id - integer
comment_id - integer
user_id - integer
使用 laravel Eloquent ORM
belongsTo('App\Comments', 'post_id', 'id');
}
}
希望 在查询 posts
的 留言信息的时候, 一起通过 comments
的 user_id
的查询到 users
所有的信息
表结构
posts
id - integer
title - string
body - text
comments
id - integer
post_id - integer
user_id - integer
body - text
users
id - integer
name - string
phone - integer
sex - integer
comment_likes
id - integer
comment_id - integer
user_id - integer
使用 laravel Eloquent ORM
belongsTo('App\Comments', 'post_id', 'id');
}
}
希望 在查询 posts
的 留言信息的时候, 一起通过 comments
的 user_id
的查询到 users
所有的信息
Comment.php
class Comment extends Model {
public function user () {
return $this->hasOne('App\User', 'id', 'user_id');
}
}
读取时 with
$posts = Post::where(....)->with(['comments' => function($query) {
$query->with('user');
}])->get();
foreach($posts $post)
foreach($post->comments as $comment)
echo $comments->user->name;
一般是这么弄的,使用with比较省性能,
如果你对性能不在乎,可以如下这么弄。不过我会给你打0分。不要学下面
$posts = Post::find(1);
foreach ($posts->comments as $comment)
echo $comment->user->name;
为什么?看看我写的ORM的教程中对使用with的区别
http://www.load-page.com/base...