【如何在Symfony 1.4中获取并显示无效表单的所有错误】借助Symfony 1.4中使用的模型和表单类, 你将能够验证表单数据是否是后端所需的数据, 以防止在向数据库中插入数据时出现异常。提交表单并由流程操作处理数据时, 最常见的问题之一是, 当表单无效时, 你将得到一个乏味的错误, 即变量不存在, 例如, 检查以下代码:
<
?php protected function processForm(sfWebRequest $request, sfForm $form){$form->
bind($request->
getParameter($form->
getName()), $request->
getFiles($form->
getName()));
if ($form->
isValid()){$horarios = $form->
save();
$this->
redirect('horarios/index');
}}
第一个问题是, 提交后你需要知道表单中存在哪些错误。通常, 你可以在项目的开发环境中使用调试工具栏调试表单的错误模式, 但是由于编程模式的原因, 有时你将无法使用调试栏。
当表单无效时, getErrorSchema方法将包含你需要了解的信息, 以了解为什么无法处理表单:
<
?php $errors = array();
foreach ($form->
getErrorSchema() as $key =>
$err) {if ($key) {$errors[$key] = $err->
getMessage();
}}// Display the array to see the form errorsvar_dump($errors);
编码愉快!
推荐阅读
- 如何在PHP的闭包函数中更改范围之外的变量的值
- 如何从SQL Server Management Studio中的多个备份(bak)文件还原数据库
- 修复Twig_Error_Runtime无法在Silex中加载”Symfony\Component\Form\FormRenderer”运行时
- 如何使用sfGuardPlugin在Symfony 1.4中手动登录用户
- 如何在不使用C语言的sqrt函数的情况下获得数字的平方根
- 如何在Symfony 4中注册自定义DQL函数(原则扩展)
- 如何建立有编码和无编码的电子学习网站()
- Android格式的日期为Datepicker的MM-DD-YYYY
- Android Studio(我还可以在清单中使用带有appcompat主题的HOLO Light DatePicker吗())