问题标签 [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 投票
1 回答
81 浏览

symfony - 使用 FOSUserBundle 的页面资源问题

我希望仅在用户登录时启用整个页面访问(FOS 用户登录页面除外)

这就是我设置访问控制的方式:

但问题是它现在阻止了我所有的脚本。CSS和JS不可用,所以登录页面没有样式!如果我删除:

从访问控制一切正常,登录页面的样式。关于如何将整个页面置于“锁定”(登录页面除外)但仍显示样式(CSS)的任何帮助?

0 投票
0 回答
131 浏览

php - 从 Symfony2 中的 MenuBuilder 类生成格式良好的路由

我在控制器中定义了这条路线:

我需要在 KNPMenuBundle MenuBuilder 类中设置正确的路线。我正在做如下:

它适用于dev环境,因为路由显示了正确的页面并执行了正确的代码,但是如果我离开dev并上线,prod那么我得到了一个404 Not found,在这种情况下我做错了什么?在类内生成路由的正确方法应该是什么MenuBuilder?有什么建议吗?

0 投票
1 回答
1122 浏览

php - 限制 Ajax 调用的路由,在 Symfony 2.6+ 中可以吗?

我正在寻找实现对 Ajax 调用的“自动”路由限制的最佳方法。现在我正在做如下:

为了避免这种情况,我可以改用它吗?

我使用 jQuery 作为唯一的 JS 框架,所以XMLHttpRequest不会有问题。如果路由不是通过 Ajax 调用执行的,会触发什么样的异常?我可以抓住它并向用户显示消息吗?或者显示某种 404 页面?

我在这里发现了一个类似的问题,但对我来说根本不清楚

0 投票
1 回答
1242 浏览

php - Symfony2 在自定义路由加载器上找不到路由

我有同样的问题 symfony2在这里描述

当您有一个捆绑包但不想手动将捆绑包的路由添加到app/config/routing.yml. 当您想让捆绑包可重用时,这可能尤其重要

TLDR;我正在尝试使用 symfony2 文档 http://symfony.com/doc/current/cookbook/routing/custom_route_loader.html#more-advanced-loaders的这一部分来实现自定义路由加载器

但是它似乎不起作用,找不到路线;

到目前为止,这是我尝试过的: 加载程序:

这是我的 routing.yml

路由.yml

除非我将路由放回主 app/config/routing.yml 文件中,否则无法找到捆绑包的路由,如何解决此问题?

编辑:

FileLoaderImportCircularReferenceException:在“/app/config/routing_dev.yml”中检测到循环引用(“/app/config/routing_dev.yml”>“/app/config/routing.yml”>“.”>“@GabrielAdminPanelBundle/Controller/” >“/app/config/routing_dev.yml”)。

0 投票
1 回答
3043 浏览

php - 如何告诉 symfony 加载我的自定义 routing.yml 配置

我正在尝试实现这个 http://symfony.com/doc/current/cookbook/routing/custom_route_loader.html#more-advanced-loaders

我需要捆绑路由在捆绑注册时自动激活

所以我在路径中创建了这个文件

src/Gabriel\AdminPanelBundle\Routing\AdvancedLoader.php

与内容

我复制了这个配置

并将其粘贴到我自己的配置文件中

问题:

Symfony2 完全忽略了我的 AdvancedLoader.php 文件,我可以在其中放入任何语法错误,并且该站点甚至不会抛出错误,而且 router:debug 也不会显示包内定义的路由,除非我移动配置回原来的 router.yml 文件。

PS:清除缓存不会改变任何东西

编辑:当我添加服务和资源时,出现此错误

FileLoaderImportCircularReferenceException:在“/app/config/routing_dev.yml”中检测到循环引用(“/app/config/routing_dev.yml”>“/app/config/routing.yml”>“.”>“@GabrielAdminPanelBundle/Controller/” >“/app/config/routing_dev.yml”)。

0 投票
1 回答
1235 浏览

javascript - 从 Javascript|jQuery 和 Symfony2 项目中的 URL 获取价值

我需要使用 Javascript/jQuery 从 URL 获取一些参数,我发现了这个不错的函数:

所以我开始在我的代码中使用,但我遇到了一些问题,因为我正在寻找的参数是undefined. 首先,这是一个 Symfony2 项目,所以Profiler给了我这些信息:

我从这里需要的是registroand solicitud。所以我在 Javascript 方面所做的是:

但令我惊讶undefined的是,我认为原因是registroURL 中不存在,http://project.dev/app_dev.php/proceso/1/58/modificar但它存在于请求中。我如何从 whithin Javascript中获取registro和值?solicitud我需要将这些参数发送到 Ajax 调用,有什么建议吗?

0 投票
1 回答
312 浏览

angularjs - FOSJsRoutingBundle:不公开安全和拒绝的路由

我正在使用FOSJsRoutingBundle并且FOSRestBundle我想做的是定义整个控制器来公开路由,如下所示:

我也不想公开使用注释保护的路由,当前用户无法访问这些路由,而无需明确设置路由。我们都知道人类的记忆是容易出错的,所以我想自动化它。@Secureexpose = false

这是因为我想确保如果用户无法访问它,任何被拒绝的路由都不会暴露给前端。前端有 Angular 应用程序,我们最好在请求它之前知道路由是否可访问(我们可以Routing.getRoute()用来检查它是否允许,例如,如果路由被拒绝,则不显示菜单项)。

或者也许有更好的解决方案?

0 投票
1 回答
1455 浏览

symfony - Symfony2 路由:导入所有控制器的注释但排除一个(NelmioApiDoc 中的重复路由)

问题

当我们在 中定义routing.yml

和:

我们得到重复的路线NelmioApiDoc

在此处输入图像描述

问题

我们应该如何做到这一点,这样路由ApiController就不会被重复?

  • ApiController从“通配符”资源导入中排除?
  • 单独导入所有其他控制器?
  • 其他解决方案?
0 投票
2 回答
1096 浏览

php - symfony2.3 路由在 prod env 上不起作用

我正在尝试在 Windows 环境中使用 symfony 在我的网站上创建 /contact 路由。我在routing.yml文件中添加了这样的路线:

我已启用 prod env:$kernel = new AppKernel('prod', true); 尝试在prod_env上执行页面:http://localhost/fstn/web/app_dev.php/contact返回 404 错误,但在dev_env中它正确显示了联系页面。所以我尝试通过以下方式调试路由: php app/console router:debug -e=prod 我得到了这个:

Name Method Scheme Host Path fstn_venice_homepage ANY ANY ANY / fstn_venice_contact ANY ANY ANY /contact

我什至尝试使用命令行清除缓存:

php .\app\console cache:clear --env=prod --no-debug并且它不会显示任何错误,但在 prod 环境中显示联系页面也没有运气。我该如何解决这个问题?

--edit--- 我找到了错误的来源,实际上我应该使用此路径在 prod env 中工作:http://localhost/fstn/web/app.php/contact但我在http://localhost之前使用过/fstn/web/contact进行测试。

0 投票
1 回答
61 浏览

php - symfony2 路由默认值

我已经定义了一个带有注释的控制器

我尝试像这里一样使用它

并得到