Symfony:在表单处理之前和之后获取表单值

时间:2015-03-14 00:25:46

标签: forms symfony

您好我希望能够比较表单处理之前和之后的值,以便我可以在刷新之前处理它们。 我所做的是在handlerequest之前收集数组中的旧值。 然后,我将新值与数组中的旧值进行比较。

它完全适用于简单变量,例如字符串。 但是我想处理上传的文件。我可以在处理表单之前获取他们的完整路径和名称,但是当我在检查表单是否有效后得到值时,我仍然得到相同的旧值。

我试过调用$ entity-> getVar()和$ form-> getData() - > getVar()并且我有相同的输出....

1 个答案:

答案 0 :(得分:0)

您好我实际上找到了解决方案。然而,这与我在我的问题中宣布的策略背道而驰,我发现这个策略在我的目标方面有些截然不同。这是为了比较旧文件名和新名称(这些名称实际上包括完整路径)进行更改,以便我将取消那些不在新名称列表中的旧名称的链接。基本上,在上传文件以替换另一个文件之后进行清理操作,而不先删除第一个文件。并且为了节省网站管理员的麻烦,必须在网站仍然使用的uniqid命名文件和无用的文件之间进行排序。 问题是我的上传功能与官方文档页面上显示的文件上传代码的示例非常相似,似乎在刷新时生效。 因此,由于我想对这些文件做的事情与数据库操作无关,我在flush之后使用了第二步代码启动,这很好。 但是我对你的解决方案很感兴趣,因为它们都是我没有想过的策略。谢谢你的建议。

但是我不确定克隆整个对象是否比比较两个文件名数组一样简单。