Laravel 5分页产生的链接问题

时间:2015-02-10 05:08:56

标签: laravel pagination laravel-5

当我尝试在Laravel 5中使用Paginator时,我遇到了一个奇怪的问题。 准备了数据和分页信息,但是当我在刀片中调用$ model-> render()时,页面的链接完全错误。

以下是控制器中的一些示例代码:

public function index()
{
    $articles = Article::latest('published_at')->paginate(3);
    return view('articles/index')->with('articles',$articles);
}

刀片中的代码:

{!! $articles->render() !!}

最后是路线中的代码:

Route::get('articles',array('as' => 'article-list','uses' => 'ArticleController@index'));

问题是Laravel会在不同页面上生成错误的网址: example.com/articles/?page=2 ,附加/之前?。

有一种解决方法可以在将数据传递给视图之前通过调用setPath()来更正url,现在链接可以正常工作,如下所示:

$articles = Article::latest('published_at')->paginate(3);
$articles->setPath('articles');
return view('articles/index')->with('articles',$articles);

但是还有其他选项来生成Laravel 5中页面的正确链接吗?我错过了什么?

谢谢。


环境更新:xampp。

1 个答案:

答案 0 :(得分:10)

在刀片中使用此代码,

{!! str_replace('/?', '?', $articles->render()) !!}

此代码生成正确的网址。