相关疑难解决方法(0)

Symfony2:如何将url查询字符串参数传递给控制器​​?

也许我错过了一些东西,但似乎没有办法在Symfony2中的路由中定义查询字符串参数,以便它们可以传递到控制器中.

例如,不是生成类似/blog/my-blog-post(来自Symfony2的路由文档)的URI 并将其传递给以下路由:

# app/config/routing.yml    
blog_show:
    pattern:   /blog/{slug}
    defaults:  { _controller: AcmeBlogBundle:Blog:show }
Run Code Online (Sandbox Code Playgroud)

我宁愿生成像这样的URI /blog?slug=my-blog-post.问题是我找不到任何地方slug在路由配置文件中定义参数(如上面的{slug}对应部分).

也许这是故意的,但是在查询字符串中使用GET参数的最佳做法是什么?

文档确实在使用查询字符串生成URL时提到它们,那么如何将它们传递给控制器​​?

我可以在哪里找到它们是Symfony2和HTTP Fundamentals:

use Symfony\Component\HttpFoundation\Request;

$request = Request::createFromGlobals();

// retrieve GET variables
$request->query->get('foo');
Run Code Online (Sandbox Code Playgroud)

这是在控制器内使用它们的最佳实践吗?

parameters url routing query-string symfony

19
推荐指数
2
解决办法
7万
查看次数

标签 统计

parameters ×1

query-string ×1

routing ×1

symfony ×1

url ×1