0

是验证表单并将其过滤后的输入传递给服务层,还是将原始输入传递给服务层,并让服务验证输入(有或没有表单实例)更好?

显然,如果是后者,控制器仍然需要访问表单,以便将其发送到视图进行渲染。如果是这样,您是否只需通过服务 ($service->getRegistrationForm()) 访问表单?

也可以看看:

4

1 回答 1

0

表单本身应该处理验证,ZF2 在Form类上具有启用此功能的方法。

在控制器上的一个动作中,它期望表单中的某种数据,我做的第一件事就是验证表单 ( $form->isValid())。如果表单无效,控制器将立即处理。通常这涉及直接返回ViewModel表单(现在包含数据+验证结果),以便用户可以看到任何验证错误。

我不明白你为什么不去检查你是否有有效的数据或你知道是无效的数据而费心去进一步。事实上,数据甚至可能是恶意的(CSRF,由表单验证处理)。

基本上,传递原始输入与过滤输入的问题从未真正出现过。

于 2013-10-21T00:10:43.993 回答