php - Laravel 5.4 ORM 返回的 model 实例无法调用 addQuery 方法
本文介绍了php - Laravel 5.4 ORM 返回的 model 实例无法调用 addQuery 方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
在 5.3 版本中,我有这段代码:
tag = Tag::where('tag', $tag)->firstOrFail();
$reverse_direction = (bool) $tag->reverse_direction;
$posts = Post::where('published_at', '<=', Carbon::now())->whereHas('tags', function ($query) use ($tag) {
$query->where('id', '=', $tag->id);
})
->where('is_published', 1)
->orderBy('published_at', $reverse_direction ? 'asc' : 'desc')
->simplePaginate(config('blog.posts_per_page'));
$posts->addQuery('tag', $tag->tag);
addQuery()
就是在分页结果中给链接加上 tag 参数,但是这段代码在 5.4 版本中报错:Method addQuery does not exist.
, 追踪了下源码,分页器类都继承了 abstractPaginator
这个抽象类,该方法就在这个类里定义的,为什么 5.4 版本调用报错呢?有点奇怪,又遇见同样问题的么?谢谢!
解决方案
protected function addQuery($key, $value)
public function appends($key, $value = null)
这篇关于php - Laravel 5.4 ORM 返回的 model 实例无法调用 addQuery 方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文