|
2
|
| Jeremy Hicks · 技术社区 · 16 年前 |
|
|
1
3
我会把两份表格提交给同一个行动。这件事真的不应该太麻烦。在每个表单中都包含一个隐藏字段,表示要提交哪个表单。 申请表登录:
申请表登记:
控制器:
视图:
在这种类型的设置中,如果任何一个表单验证失败,
|
|
|
2
1
我个人认为 应该 就像你所拥有的,贴到它自己的控制器上。这会将处理该表单的代码保存在一个地方。这里的问题是,您希望返回到验证失败的原始页。但为什么呢?为什么不简单地在目标控制器中重新显示表单,就像页面上只有一个表单一样?
例如,考虑一个出现在sie的每一页上的登录表单(可能是因为它在站点模板/布局中)。它发布到
见 this answer 进行类似的讨论。 更新 :在这方面有另一个想法。如果您真的想在两个不同的控制器中处理该处理,以便让他保持在发布表单的页面上,那么至少将该表单处理提取到 action helper . 这样,您至少可以保持表单处理 DRY .
更新
:Rob Allen刚刚写了一篇很棒的博文
"A form in your layout"
其中,他描述了一个方法,该方法使用带有
|
|
|
3
0
如何重定向?如果你再次显示表单页面,我看不出问题。可以使用Zend_Form::populate()预先填充表单。 |
|
|
4
0
好吧,我会把两份表格放在同一页上。 我不明白为什么你的代码会变得更不可读。学习如何使用动作助手,你的控制器会突然变得非常简单易读:
每个表单的处理都有自己的动作助手。 |
|
|
Kermit · Python Selenium如何一次填充多个文本框 9 年前 |