问题标签 [symfony-2.2]

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 投票
3 回答
9270 浏览

symfony - Gedmo\Loggable 记录未更改的数据

我将 Symfony2.2 与 StofDoctrineExtensionsBundle(以及 Gedmo DoctrineExtensions)一起使用。我有一个简单的实体

更改现有对象的属性时,会在 table 中完成日志条目ext_log_entries。此日志表中的条目仅包含更改的列。我可以通过以下方式阅读日志:

但我不明白的是,为什么该字段birthdate总是包含在日志条目中,即使它没有改变。以下是三个日志条目的一些示例:

我只想记录真正改变的数据。有没有我还没有看到的选项?这似乎与事实有关,那birthdate是一个DateTime对象,不是吗?

编辑DateTime它与对象 无关。这甚至发生在其他实体中。我有另一个包含一个简单值的实体:

在浏览器中打开编辑表单并保存而不修改时,日志表包含:

为什么?

0 投票
1 回答
2542 浏览

php - Symfony 2.2 - 从路由生成 URL 或简单地显示 URL

我正在为 Symfony 2 开发一个导航系统。到目前为止它运行得非常好。到目前为止,有一个像这样的配置文件:

这个布局很好用,菜单也很好用。除了在我的模板中,我只能使用与应用程序中的路由对应的目标值生成链接;即,不是外部 URL。

生成导航的模板如下:

是否有一种简单的方法来允许该path()功能,或者类似于从路由生成 URL 的方法,或者只是简单地使用给定的 URL(如果它被验证为一个 URL)?

我尽了最大的努力url(),环顾了文档,但什么也没看到。

0 投票
1 回答
984 浏览

symfony - 路由前缀中的语言环境

我正在尝试为单个控制器中的所有路由添加前缀,_locale但到目前为止我还没有成功:

route:debug甚至没有列出以 second 为前缀的 URL @Route。我尝试_locale完全移除 slug,但仍然找不到路线。

我在这里错过了什么吗?甚至可以有多个前缀吗?

任何帮助将不胜感激...

0 投票
1 回答
2265 浏览

php - Symfony 2.2 上的用户包

我试图在 Symfony 2.2 上安装 FOSUserBundle,但没有成功。我遵循了此处描述的所有步骤, 但总是收到此错误:

MappingException:在链配置的命名空间 FOS\UserBundle\Entity 中找不到类“Acme\UserBundle\Entity\User”

0 投票
1 回答
133 浏览

symfony - Symfony 2.2 中找不到类

我有一个 Symfony 2.2 项目,只有一个名为"Xedef"的应用程序。在该应用程序文件夹中,我创建了一个Model目录,其中包含一些类。我希望我可以为这些类定义一个命名空间,将命名空间声明为:

然后从我的控制器中使用它们,只需将命名空间“使用”为:

但我没有运气。这会导致以下错误:

FatalErrorException:错误:在 /gitRepo/XedefApp/src/Xedef/MainBundle/Controller/HomeController.php 中找不到类“Xedef\Model\MyClass”

奇怪的是,我在 Sf 2.1 中做了同样的事情,我没有遇到任何麻烦。2.2有什么变化吗?

0 投票
1 回答
242 浏览

symfony - 打开邀请者 Symfony2-artseld/openinviter-bundle

https://github.com/artseld/ArtseldOpeninviterBundle

我无法在我的 symfony 2.2 中安装这个包。

问题 1 - 在任何版本中都找不到请求的包 arteld/openinviter-bundle,包名称可能有拼写错误。

潜在原因: - 包名称中的拼写错误 - 根据您的最低稳定性设置,该包在足够稳定的版本中不可用,请参阅https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/讨论更多细节。

有谁知道是什么问题?

0 投票
1 回答
643 浏览

symfony - Symfony 表单复选框标签翻译

我正在使用 Sonata Admin + Sonata ORM + Sonata User 来编辑用户。编辑用户时有几个复选框。每个复选框都有两个标签(一个在复选框之前,另一个在复选框之后)。两个标签具有相同的值,但只有一个被翻译。

看起来奏鸣曲与此问题无关,因为它没有用于复选框的自定义模板。有没有办法翻译这两个标签?在此处输入图像描述

0 投票
1 回答
7640 浏览

symfony - Symfony2 有时会降低开发和生产响应时间

我一直在从事一个新的工作项目,并且遇到了一个奇怪的问题,即我的应用程序需要很长时间才能在 dev 和 prod 中返回响应。但是有时它会很快返回响应。我在这里阅读了一些关于可能原因的帖子,但没有一个能解决我的问题。

起初我以为是因为我提出了一些子请求,所以我删除了这些请求,但仍然有同样的问题。

我在 DEV 中的平均请求仅在 20-30MB 之间。我正在尝试使用分析器来帮助我找出这可能来自哪里,但是每个请求它都显示请求中最长的部分是不同的区域。例如,在一个请求中,最长的部分是控制器,在另一个对同一页面的请求中,它是模板侦听器,在另一个请求中,它是安全/防火墙侦听器。

例如,我主页上的快速请求大约需要 116 毫秒。我等了一会儿,刷新它需要 9467 毫秒,甚至我看到它需要 30,000 多毫秒。

虽然我可以在开发模式下稍微慢一点,但 prod 也在做同样的事情。有时快,有时慢。APC 缓存已启用。一般来说,我的学说查询只需要 4-20 毫秒就可以完成,具体取决于页面。

我正在运行 PHP 5.3,但决定升级到 5.4 看看是否有帮助,仍然是同样的问题。我正在使用 nginx 的最新稳定版本。FPM 中的 PHP。服务器正在运行其他没有问题的网站——magento 和 symfony 1.4 Web 应用程序都没有这样的问题。

服务器是四核双核,32GB 内存,所以我有很多资源。在我发出请求时观察进程,我没有看到异常的 cpu 或内存负载。

我还没有尝试在另一台机器上运行该应用程序 - 但我不明白为什么我的所有其他应用程序都可以正常工作,而这个是唯一一个遇到这种缓慢的应用程序。我今晚可能会对此进行测试,但我想看看是否有人以前遇到过这样的问题。

当请求需要很长时间时,以下是我的分析器的一些快照:

在此处输入图像描述


在此处输入图像描述


在此处输入图像描述


在此处输入图像描述


这是请求按预期速度快的两个

在此处输入图像描述 在此处输入图像描述

这是我的 composer.json

0 投票
2 回答
1769 浏览

css - Symfony2 设置 css 媒体类型(全部、打印、屏幕、手持)

我想我到处寻找,但没有成功。我正在学习 Symfony2,所以我可能忽略了一些东西。

这是我加载我的css的方式(它工作正常):

问题是我如何区分媒体:手持、印刷、屏幕?

发现在旧的 Symfony 版本中,有一个文件 view.yml,其中可以标记“mobile.css”将只为小型设备等加载。到那时我找到了讨论http://www.mail-archive。 com/symfony-devs@googlegroups.com/msg07718.html Symfony2 中的新方法要好得多,删除这个 view.yml 是很好的一步。然而,它让我无法解决我的问题。

所以问题是:我如何指定 media="handheld" 让我们说 mobile.css 或 media="print" 为可打印版本,从我的捆绑包中获取?

我猜这可能是某种条件,在树枝中测试名称,并且取决于名称,例如 home_mobile.css 或 home_print.css 将相应地加载 media="handheld" 或 media="print",默认情况下 media="屏幕” - 但如果这是正确的方向以及如何实现它?

谢谢你的帮助

0 投票
2 回答
3488 浏览

validation - 停止验证 Symfony2 中的第一个错误标志?

如果有某种标志/选项强制 symfony2 验证在验证链中的第一个错误时停止,我正在搜索信息。例如,我的email字段中有三个验证器:

我想在第一个错误后停止验证。我怎样才能做到这一点?我读过类似的问题:

Symfony2:第一个错误时验证停止

如何在 Symfony2 中停止对约束失败的验证

Symfony-2 给出了不止一个验证错误信息

最后一个非常好,但是当有多个验证器时,有什么方法可以在不使用验证组的情况下做到这一点?我在某处读到 Symfony 2.2 中会有一个标志或选项,但我有 2.2.1 版本,找不到这样的选项。