繁体   English   中英

如何在ZF2 / ZF3 url视图助手中添加查询参数

How can you add query parameters in the ZF2 / ZF3 url view helper

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在尝试使用路由创建带有查询字符串的URL,如下所示:

$this->url('users') -> /users
$this->url('users', ['sort' => 'desc']) -> /users?sort=desc

然而,这似乎不起作用(第二个助手实际输出/users )。 根据这个非官方的,过时的文档 ,曾经有一种方法可以通过向路由名称附加/query来实现这一点,但是这会给出一个路由未找到的异常。

可以使用当前的url帮助程序完成吗?

3 个回复

自2.1.4版以来,您遇到了用户错误

自ZF 2.1.4起不推荐使用查询路由; 使用HTTP路由器的汇编方法的“查询”选项代替

用法示例:

$name    = 'index/article';
$params  = ['article_id' => $articleId];
$options = [
        'query' => ['param' => 'value'], 
    ];
$this->url($name, $params, $options);

这可以使用当前URL视图帮助程序yes来完成。

$this->url('users', [], array('query' => array('sort' => 'desc')))

您不需要设置查询字符串子路由。 只要您为“用户”设置了路径,就可以在控制器中查找“排序”参数,并在需要时使用。

您可以为此用户路由创建子路由,如下所示:

'users' => array(
    'type' => 'Literal',
    'options' => array(
        'route' => '/users',
        'defaults' => array(
            '__NAMESPACE__' => 'User\Controller',
            'controller' => 'Index',
            'action' => 'list',
        ),
    ),
    'may_terminate' => true,
    'child_routes'  => array(
        'query' => array(
            'type' => 'Query',
        ),
    ),
),

然后你可以汇编$this->url('users/query', array('sort' => 'desc'))

别忘了将may_terminate设置为true

2 zf2-网址视图助手:指定路由参数

我的主路由器如下所示(简化): 在显示在“ / en / admin / post / add”上的模板中,我调用了$this->url() ,最终打印了/%language%/admin/post/add 。 我的模板上$language上有可用的语言代码,我想将其传递给u ...

3 ZF2:使用url帮助器并重用查询参数

我正在尝试在视图中使用Url帮助器重用查询参数。 这是我目前的网址: 我在视图中使用此代码: 我想获得这个网址: 但是我得到了这个: 这是我在module.config.php文件中的路由: 我究竟做错了什么? 谢谢你的帮助。 ...

4 ZF2-url()查看帮助程序问题

我对Zend Framework 2方法$this->url()有问题。 这是我的代码: Module.php module.config.php 并在layout.phtml中: 在此方法中,将忽略参数语言环境,最终结果为: 我想要以下链接: ...

6 从zf2迁移到zf3

关于我的应用程序从zf2到zf3的迁移,我有一些问题。 我已经阅读了迁移指南,并按照那里的描述开始了迁移过程。 根据迁移指南,控制器中不再有serviceLocator可用。 我以前在每个控制器动作中都使用它,将配置变量数组(位于module.config.php中), Doctrin ...

8 如何在ZF2 View Helper中使用toRoute

我真的不想问这个问题,但是现在我无能为力了。 我想在我的视图助手中使用toRoute或重定向控制器插件。 我知道View助手扩展了View层的功能,并且在整个应用程序中都具有可重用性。 控制器插件扩展了控制器层上的功能。 但我希望其他解决方案可以做到这一点。 这是我的视图助手: ...

10 ZF2:表单中的视图助手

我创建了一个视图帮助程序,用作新闻简报订阅的侧边栏小部件。 按照官方的zf2创建表单指南,我在__invoke()中添加了addAction的代码。 以下代码返回错误消息: 我是否必须包含一些本教程中未提及的其他代码,因为我正在使用帮助程序文件中的代码? ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM