Symfony 4中没有服务FOSJsRoutingBundle - php

错误:

An exception has been thrown during the rendering of a template 

"You have requested a non-existent service "C". Did you mean one of
these: "Symfony\Bundle\FrameworkBundle\Controller\RedirectController",
"Symfony\Bundle\FrameworkBundle\Controller\TemplateController

如何在symfony 4中打开FOSJsRoutingBundle?

bundles.php:

FOS\JsRoutingBundle\FOSJsRoutingBundle::class => ['all' => true] 

routes.yaml:

fos_js_routing:
    resource: "@FOSJsRoutingBundle/Resources/config/routing/routing.xml"

layout.html.twig:

<script src="{{ asset('bundles/fosjsrouting/js/router.js') }}"></script>
<script src="{{ path('fos_js_routing_js', { callback: 'fos.Router.setData' }) }}"></script>

参考方案

您是否使用webpack?如果是,则无需将此代码包括在模板中:

<script src="{{ asset('bundles/fosjsrouting/js/router.min.js') }}"></script>
<script src="{{ path('fos_js_routing_js', { callback: 'fos.Router.setData' }) }}"></script>

您所要做的就是运行以下命令:

bin/console fos:js-routing:dump --format=json --target=public/js/fos_js_routes.json

然后将此代码包括在资产文件夹中的.js文件中:

const routes = require('../../web/js/fos_js_routes.json');
import Routing from '../../vendor/friendsofsymfony/jsrouting-bundle/Resources/public/js/router.min.js';

Routing.setRoutingData(routes);
Routing.generate('rep_log_list');

本指南参考此文档:FOSJsRouting Usage

Symfony 2在用户站点上动态添加字段以形成表单 - php

我正在研究调查包。目的是为用户提供一个功能全面的调查系统。我已经准备好一个后端,使您可以创建调查,添加问题(打开文本,单选按钮,复选框),是否需要提问,激活调查,生成令牌以及通过电子邮件将令牌发送到调查的链接。当然,我也有显示调查并保存答案的前端。现在,我想添加另一种可能性。带有答案(单选或复选框)和评论的问题。例如:你有一只狗吗?是没有如果用户选择是,则附…

Symfony 2:如何通过路由名称获取默认路由? - php

是否可以通过名称检索有关某条路线的信息,或获取所有路线的列表?我需要能够获取任意路径的_controller中的defaults值,而不仅仅是当前路径。这有可能吗?P.S .:我发现我可以找到使用YAML的路由,但是重新解析似乎是不必要且繁重的。 参考方案 我真的很擅长回答自己的问题。要获取路由,请在路由器上(控制器内的getRouteCollection(…

symfony 2路由模型 - php

Sf2.0,例如标准博客。routing.yml代码:DevBlogBundle_post_show: pattern: /posts/{id} defaults: { _controller: "DevBlogBundle:Post:show" } requirements: _method: GET id: \d+ 我使用以下方法为我…

最新的symfony安装程序与作曲者 - php

我想知道使用上次出现的新symfony安装程序和旧作曲家创建新的symfony项目时有什么区别。我同时安装了最新版本的symfony(2.6.1),结果却有所不同,例如,当我用composer安装symfony时,会得到.gitignore文件。当我使用新的symfony安装程序脚本进行安装时,缺少gitignore。以下是新鲜项目中的目录和文件数量:sym…

原则实体管理器和多线程更新数据库 - php

我目前有一个XHR请求,可以从客户端启动N次。该请求由服务器处理,每个请求通常在数据库中创建一个新行(所有原则/ xml)。在我对对象进行persist()之前,请确保是否具有唯一的文件名(我正在上传资产),并且通过重写persist(),调用我的getUniqueFilename()然后调用parent :: persist来做到这一点。当我执行多个带有相…