![]() |
1
1
注:请看杰里米的答案,因为我的答案是基于他的。 谢谢你的回答,杰里米。你的代码有一些问题,所以我想我应该发布我实现的解决方案来解释我的不同之处。
doBind()的重写有一个问题,如果父值没有从验证器返回clean,则会抛出未捕获的sfValidatorError。我把它包在一个try/catch里来抑制它。
2 新步骤 重写updateObjectEmbeddedForms()
最后,我不喜欢我必须复制和粘贴整个基地
|
![]() |
2
0
下面是这样做的一般方法。所有这些方法都可以添加到
1添加方法以跳过窗体。
2重写doBind以便不验证您不保存的窗体 这样,即使未保存的表单提交时出现错误,表单仍然会验证。这是安全的,因为这些值不会被保存。或者,可以使用preValidator清除这些值。但是,我更喜欢这种解决方案,这样如果用户提交的表单有错误,那么两个表单的值仍然存在。
4重写saveEmbeddedForms和updateObjectEmbeddedForms
|
![]() |
Jacco · 未能格式化我的日期以在php中正确工作 1 年前 |
![]() |
jay ram · 如何在URL核心php中从API获取JSON? 1 年前 |
|
Ishwarya A · php电子表格在浏览器中显示多张excel 1 年前 |