Heim  >  Artikel  >  Backend-Entwicklung  >  laravel 关联查询文章和文章作者

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

PHP中文网
PHP中文网Original
2017-03-21 16:18:231542Durchsuche

查询文章列表同时查询文章的作者信息,如何关联查询,我写了一个用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 关联查询问题

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn