php - Laravel - 在非对象上调用成员函数 paginate()

标签 php laravel pagination

我正在 Laravel 中创建一个搜索页面,但无法理解如何使用分页方法来实现此用途。

我在其他地方使用过它,但不是这样的。

所以我的路线是:

Route::get('search', function()
{
  $q = Input::get('srch-term');
  $searchTerms = explode(' ', $q);
  $query = DB::table('blogs');

  foreach($searchTerms as $term)
  {
    $query->where('blogtitle', 'LIKE', '%'. $term .'%')
        ->where('frontpage', '1')
        ->orderBy('id', 'desc');
  }

  $results = $query->get()->paginate(15);
  $countBuilds = count($results);
  return View::make('search', compact('results')); 
});

这给了我标题中的错误。如果我不使用分页方法,那么它工作正常。

我哪里出错了?

附注作为旁注,我知道我不应该在 route 执行数据库操作,仍然应该思考如何在 route 使用 Controller 等中的功能,但这不适合这里。

最佳答案

Route::get('search', function()
{
  $q = Input::get('srch-term');
  $searchTerms = explode(' ', $q);
  $query = DB::table('blogs');

  foreach($searchTerms as $term)
  {
    $query = $query->where('blogtitle', 'LIKE', '%'. $term .'%')
        ->where('frontpage', '1')
        ->orderBy('id', 'desc');
  }

  //remove ->get()

  $results = $query->paginate(15);
  $countBuilds = count($results);
  return View::make('search', compact('results')); 
});

关于php - Laravel - 在非对象上调用成员函数 paginate(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27651433/

相关文章:

python - django 的分页在 django View 中是如何工作的

php - MySQL 查询不会将用户输入添加到表中

php - 为什么来自同一 IP 的第二个客户端在显示页面之前有 20 秒的超时?

php - php artisan migrate的Laravel错误

mysql - Laravel - 违反完整性约束 : 1452 Cannot add or update a child row

ruby-on-rails - 有没有办法让页码作为rails中的字母

jsf - 在 Prime faces 数据表中延迟加载时,如何在分页后保留选择列表和复选框?

php - 由于重复捕获组而不是捕获重复组,正则表达式不匹配

javascript - 如何将 PHP Instagram 签名与 AJAX 结合使用?

php - SQLSTATE[42S01] : Base table or view already exists: 1050 Table 'payments' already exists (SQL: create table `payments`