laravel Eloquent ORM —— 关联
程序员文章站
2022-04-17 18:47:45
...
表结构
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...
推荐阅读
-
Laravel5.1 框架关联模型之后操作实例分析
-
Laravel5.1 框架模型多态关联用法实例分析
-
Laravel框架Eloquent ORM简介、模型建立及查询数据操作详解
-
Laravel框架Eloquent ORM删除数据操作示例
-
laravel5.6 框架操作数据 Eloquent ORM用法示例
-
Laravel框架Eloquent ORM新增数据、自定义时间戳及批量赋值用法详解
-
Laravel框架Eloquent ORM修改数据操作示例
-
Laravel Eloquent分表方法并使用模型关联的实现
-
laravel 框架结合关联查询 when()用法分析
-
Laravel ORM对Model::find方法进行缓存示例详解