Rumah  >  Artikel  >  pembangunan bahagian belakang  >  laravel 关联查询文章和文章作者

laravel 关联查询文章和文章作者

PHP中文网
PHP中文网asal
2017-03-21 16:18:231541semak imbas

查询文章列表同时查询文章的作者信息,如何关联查询,我写了一个用1对1的关系在模型了,在视图中调用,虽然可行,但是出来查询语句很多条查询作者的语句,怎么一次查询出来

回复内容:

查询文章列表同时查询文章的作者信息,如何关联查询,我写了一个用1对1的关系在模型了,在视图中调用,虽然可行,但是出来查询语句很多条查询作者的语句,怎么一次查询出来


短答案:你需要使用Eager Loading

长答案:


像下边这样的查询和遍历,如果返回10条article数据,则一共会执行11次SQL语句,第一条是一次性查询所有10条article数据,另外每次遍历都会执行一次获取相应author数据的SQL查询(原因是Eloquent默认为Lazy Loading,访问关系数据的时候才进行查询操作)。

$articles = App\Article::all();

foreach ($articles as $article) {
    echo $article->author->name;
}

如果使用 Eager Loading,像下边这样,则一次性执行一次SQL查询。

$articles = App\Article::with('author')->get();

foreach ($articles as $article) {
    echo $article->author->name;
}

相关文章:

关于Laravel多个条件的关联查询问题 ?

Laravel 关联查询只获取管理对象的部分数据

laravel 关联查询问题

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn