从旧格式迁移到新格式,此文档在哪里?失踪? - php

也许您可能会从我之前的最新文章中注意到,我正在将SF2.0.x应用程序开发到新的SF2.7。现在,我有很多NOTICE,它们不会影响应用程序的功能,但是会起作用,我想防止这种情况。我已经阅读了SF Book的Routing章,The Routing Component以及@ Route and @Method注释,但是找不到解决此问题的帮助。所以我需要这里的人帮助。现在,路线看起来像下面的路线(XML格式):

<route id="PDOneBundle_repproject_process" path="/project/{page}/{action}">
    <default key="_controller">PDOneBundle:ProjectDetail:process</default>
    <requirement key="page">\w+</requirement>
    <requirement key="action">add|update|delete</requirement>
    <requirement key="_format">html</requirement>
    <requirement key="_method">POST|GET</requirement>
</route>

下面的消息是我得到的NOTICE

不推荐使用-自版本2.2起不推荐使用“ _method”要求
并将在3.0中删除。请改用setMethods()方法或
路由定义中的“方法”选项。

现在定义路线的正确方法是什么?

参考方案

您应该阅读以下内容:

https://github.com/symfony/symfony/blob/master/UPGRADE-3.0.md

和您搜索的部分:

Routing

    Some route settings have been renamed:
    The pattern setting for a route has been deprecated in favor of path
    The _scheme and _method requirements have been moved to the schemes and methods settings

Before:

article_edit:
   pattern: /article/{id}
   requirements: { '_method': 'POST|PUT', '_scheme': 'https', 'id': '\d+' }

<route id="article_edit" pattern="/article/{id}">
   <requirement key="_method">POST|PUT</requirement>
   <requirement key="_scheme">https</requirement>
   <requirement key="id">\d+</requirement>
</route>

$route = new Route();
$route->setPattern('/article/{id}');
$route->setRequirement('_method', 'POST|PUT');
$route->setRequirement('_scheme', 'https');

After:

article_edit:
   path: /article/{id}
   methods: [POST, PUT]
   schemes: https
   requirements: { 'id': '\d+' }

<route id="article_edit" path="/article/{id}" methods="POST PUT" schemes="https">
   <requirement key="id">\d+</requirement>
</route>

$route = new Route();
$route->setPath('/article/{id}');
$route->setMethods(array('POST', 'PUT'));
$route->setSchemes('https');

将输入类型复选框关联到输入类型文本 - php

我有一个问题,我需要将输入类型复选框与输入类型文本关联。情况如下:从数据库中提取数据。 PK数据是复选框的值。当复选框选择输入类型的文本时,您可以在其中输入特定数字。现在的问题是,选中所有类型的复选框输入文本都会被激活。我希望通过选择复选框输入,仅启用与复选框相关联的输入。我的HTML代码(此代码创建一个输入复选框,并为数据库中的每个记录输入文本,而我要激活…

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

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

为什么preg_replace抛出“未知修饰符”错误? - php

我不断收到此错误: 警告:preg_match() [function.preg-match]:未知 修饰语“ t”在 D:\ xampp \ htdocs \ administrator \ components \ com_smms \ functions \ plugin.php 在235行上:$PageContent = preg_replace($…

AJAX调用只能与$(document).on('click')一起使用 - php

我有一个显示数据库条目的表。用户能够为每一行打开一个弹出菜单。选项之一是删除数据库条目,并且该表应通过AJAX调用相应地刷新。只要有人单击#delete-toggle中的table-popup,我就会在HTML页面上进行AJAX调用(table-popup是div,当有人单击每行中存在的表中的table-edit-button时出现的表): <div …

显示基于主类别的子类别不适用于AJAX - php

我的数据库中有一个“ make”和“ model”表。当我回声汽车“制造”时,它可以正常工作。但是,我希望汽车“模型”下拉列表根据选定的“制造商”与ajax一起显示,因此在视图中不起作用但是,我需要的所有信息都显示在控制台的“网络”选项卡上。问题出在哪里?这是我的ajax代码:<script type="text/javascript…