问题标签 [symfony-routing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
137162 浏览

symfony - Symfony - 在控制器中生成带有参数的 url

我想直接在我的控制器中生成一个 Url。我想使用在我的 routing.yml 文件中定义的需要参数的 url。

我在 Cookbook(Routage 部分)中找到了该代码:

但我不明白什么是引用 $router。显然,它不起作用。有没有一种简单的方法可以在控制器中生成带有参数的路由 url?

0 投票
2 回答
712 浏览

symfony - 同捆不同路线

我需要有不同的路线指向同一个包。例如:/mkt/contacts 和 /crm/contacts 应该指向同一个联系人包。

为什么?我正在开发一个平台(一个 symfony2 项目),它有许多应用程序(营销应用程序、CRM 应用程序等等。每个应用程序都是一组模块(包),其中一些在应用程序之间共享(如 ContactsBundle)。

我需要做的是共享包的路由前缀是相对于当前应用程序的,所以如果用户在营销应用程序(/mkt/)中,那么 ContactBundle 的路由前缀应该是 /mkt/contact。但如果它在 CRM 应用程序中,它应该是 /crm/contacts

我想我可以像这样在 routing.yml 中创建两个路由资源:

最大的问题在于使用路径功能时的视图。我怎么知道路线的名称?我能想到的唯一可能的解决方案是创建一些树枝扩展来检查当前的路径信息并返回正确的路由前缀。

有更好的想法吗?

0 投票
1 回答
723 浏览

symfony - 从 Symfony 2 中的子域生成 url 的错误?

我的项目有一个子域shop.example.com,并且routing.yml正在使用主机匹配功能(需要 Symfony >=2.2),如下所述

URL匹配工作得很好,但我在生成完整/相对 url 时遇到了一些麻烦(将域链接到子域,反之亦然):

当我从(route )运行上述代码index.html.twig时:MyFrontBundleexample.com

但是(route ) 中index.html.twig的相同代码会产生:MyShopBundleshop.example.com

如您所见,问题是从指向域的完整或相对 url 的子域生成 url。我该如何解决这个问题?

0 投票
3 回答
1669 浏览

symfony - 使用 @Method 注释的意义何在

路由方法¶ 有一个快捷方式 @Method 注释来指定路由允许的 HTTP 方法。要使用它,请导入 Method 注释命名空间:

我见过很多开发人员将方法限制为仅 GET 或 POST,但由于控制器默认允许两者,为什么开发人员选择将其限制为仅一种方法?这是某种安全措施吗?如果是的话,那会保护你免受什么样的攻击?

0 投票
1 回答
674 浏览

php - 如何强制 symfony2 仅对一页使用 HTTPS

我必须对 symfony2 应用程序中的单个页面使用 HTTPS。我试过像

安全.yml

它工作得很好,但是当我从 /payment 页面导航到其他页面时,它在 HTTPS 而不是 HTTP 中保持不变。我还尝试了奏鸣曲管理控制器的一些东西,例如:

PaymentAdmin.php

但同样的问题。只是我只想将 HTTPS 用于 /payment 页面而不是其他页面。我该如何解决这个问题。

0 投票
1 回答
2086 浏览

symfony - 如何更改树枝模板的路由生成中使用的主机?

好的,所以我有一个控制器,其中包含一个动作和 2 条与之关联的路由:

然后我想根据主机在树枝模板内生成一条路线:

如果我使用预览路线访问这条路线,那么我会得到:

但如果我不是,它会给我:

我试过的

  • 从控制器内设置路由器上下文,但这不会改变树枝中生成的路由
0 投票
2 回答
740 浏览

symfony - 如何生成忽略额外传递参数的路由

假设我对控制器操作有以下路由注释:

我想用树枝为此生成网址:

我目前得到的是:

我想要的是生成第二条路由,忽略传递给它的任何“EXTRA”参数,这样我只会得到:

有谁知道这是否可以在本地完成?我知道我可以纠正一个使用路由器的自定义 twig 函数,然后我可以生成路由并剥离查询字符串,但我想避免这种情况,如果我错过的某个地方有一个简单的切换。

0 投票
2 回答
317 浏览

php - 在 symfony 生产环境中使用 HTTP DELETE

我有一个基于 symfony 2.3 的 rest api。它在调试模式下运行良好,但如果我切换到 prod env,我总是会收到 501 响应错误,并显示此消息“此方法可能无法使用”。在 DELETE Http 请求上(获取工作正常)。

我检查了配置,得到:

配置.yml:

http_method_override => 真

这是我的路由:

我的控制器:

0 投票
2 回答
1986 浏览

php - 从 Symfony 中的路由条件表达式访问全局参数

我正在尝试从路由条件(文档)中的表达式访问应用程序范围的 symfony 参数(在 app/config/parameters.yml 中定义)。

我尝试了将参数插入百分号并通过函数“参数”(如此对 DI 所述)的运气,但均无济于事。

这是带有参数函数的示例:


但是我得到:

SyntaxError - 位置 24 附近不存在函数“参数”。


有没有办法从路由条件表达式中访问参数?

0 投票
1 回答
561 浏览

javascript - Routing static urls in javascript files in symfony

I have some javascript files in my Symfonyt2 project that load some reources dynamically from the javascript file.
for example:

the url ../shared/js/datatables.persian.json works in pages with url like /test but in pages with url ike /test2/action it fails.
How can i fix this?
Is there a tool like cssrewrite filter for assetic?
or can I make routes for such urls?