您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 岳阳分类信息网,免费分类信息发布

laravel Eloquent ORM —— 关联

2024/12/11 20:08:04发布17次查看
表结构
posts id - integer title - string body - textcomments id - integer post_id - integer user_id - integer body - textusers 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 - textcomments id - integer post_id - integer user_id - integer body - textusers 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...
岳阳分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录