缺少Illuminate \ Support \ Collection :: get()的参数1

时间:2015-09-03 01:23:38

标签: laravel

我有一个简单的Laravel 5.1代码,我得到了ErrorException Missing argument 1 for Illuminate\Support\Collection::get()。这是代码:

public function boot()
  {
     $news = News::all()->take(5)->get();
     view()->share('sideNews', $news);

  }

每当我删除那里的->get();时,它都有效。这是我第一次使用eloquent。我记得当我使用查询构建器时,我总是在代码的最后一行添加->get()。我做得对吗?谢谢。

2 个答案:

答案 0 :(得分:9)

请勿使用all方法:

public function boot()
{
    $news = News::take(5)->get();

    view()->share('sideNews', $news);
} 

答案 1 :(得分:1)

我在使用 paginate()函数时遇到了这个问题。


简单解决方案

get() paginate()

之后删除 take()

什么原因导致此错误?

如果我们在 get() paginate() 之后使用 take() 功能,例如 { {1}} ,则会发生此错误。


正确的方法或答案

paginate(5)->get()