【问题标题】:Laravel 5.1 query string parameter not working in paginationLaravel 5.1 查询字符串参数在分页中不起作用
【发布时间】:2016-06-11 10:47:40
【问题描述】:

我正在使用 laravel 5.1 分页。但它不起作用。我猜问题是访问查询字符串参数。

routes.php

Route::get('blogs', 'front\FrontController@blog');

控制器

public function blog(Request $request)
{
    print_r($request->fullUrl());
    die;
    $blogs=Blog::with('User')->where('flag','!=','0')->paginate(2);
    return view('front.pages.blog_list',['blogs'=>$blogs]);
}

对于网址http://localhost/myproject/blogs?page=2

结果:http://localhost/myproject/blogs?blogs。它应该是 ?page=2 而不是 ?blogs。我还注意到查询字符串参数在其他页面中也不起作用。任何的想法?提前致谢。

【问题讨论】:

  • 为什么需要请求?为什么叫死?
  • 用于调试目的。我想确定页面是否有效@DevinGray
  • 在处理查询字符串的方式上几乎听起来像是 Web 服务器配置错误?

标签: php pagination laravel-5.1 query-string


【解决方案1】:

使用->appends(\Input::except('page'))

return view('front.pages.blog_list',[ 'blogs'=>$blogs->appends(\Input::except('page')) ]);

【讨论】:

  • 感谢@Ravisha Hesh。但它不起作用。我不知道为什么我无法访问查询字符串:(参数...
  • 当您将dd($request->all()); 添加到您的方法中时,您是否看到了您的参数?
  • 是的@Ravisha Hesh。它不显示页面。只是数组([博客] =>​​)。
  • 离开dd(),就像我在之前的评论中提到的那样,点击这个链接手动转到localhost/myproject/blogs?page=2
  • 你可以在 laravel 中使用appends($request->all()) 在分页中包含额外的参数,分页对象包含指向下一页和上一页的链接,用于导航
【解决方案2】:

原因是 .htaccess 文件。

【讨论】:

  • .htaccess 文件中应该包含什么内容?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-07-02
  • 2016-02-17
  • 1970-01-01
  • 2017-12-28
  • 2013-02-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多