【问题标题】:Yii2 ActiveDataProvider pagination links encodingYii2 ActiveDataProvider 分页链接编码
【发布时间】:2018-09-07 15:15:36
【问题描述】:

我正在使用ActiveDataProvider 在我的网站上创建分页和prev/next 链接。但由于某种原因,我的链接包含 url 编码符号%2F。这是我的声明方式:

$dataProvider = new ActiveDataProvider([
    'query' => $products,
    'pagination' => [
        'pageSize' => $this->count,
        'forcePageParam' => false,
        'pageSizeParam' => false,
    ],
]);

例如,生成的链接如下所示:

<link href="/c1/vyhlopnaya-sistema/filter/forma_ploskiy%2Flength_dlina-290" rel="self">

是否有任何配置可以避免 url 编码?谢谢。

【问题讨论】:

  • 您的 URL 管理器中的设置很可能无效。这些链接的外观如何?您的urlManager 设置是什么?
  • @rob006,添加了问题的示例链接
  • 它仍然没有解释这个 URL 应该是什么样子以及它来自哪里。 ActiveDataProvider 不负责创建 URL,您需要分享您的 urlManager 配置。

标签: php encoding pagination yii2


【解决方案1】:

我通过在/frontend/config/main.php 中将rulesrules 添加'encodeParams' =&gt; false 解决了这个问题,如下所示:

[
    'pattern' => '/your-pattern',
    'route' => 'your/route',
    'encodeParams' => false,
],

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多