这次下的新版本发现2个变化,没以前爽
第一个是 生成的代码中,model部分不会根据数据库自动生成array('not_empty', 'XXX不能为空'),
这个验证。
第二个是,model里的验证,怎么不会再form提交失败的时候在边上显示了?
而是抛出异常,自己要捕获处理了。。
不知道其他人有没有碰到
[code] function actionNew()
{
$form = new Form_Misc(url('tripclass/new'),'tripclassnew_form.yaml');
if ($this->_context->isPOST() && $form->validate($_POST))
{
try
{
//创建对象
$tripclass =new Tripclass($form->values());
$tripclass->save();
//dump($form->values());
return $this->_redirectMessage(
'添加分类成功',
'浏览器将自动跳转,如长时间不调整请点击这里',
url('tripclass/index'));
}
catch(QValidator_ValidateFailedException $e)
{
$form['classname']->invalidate("这个分类名已经存在了");
}
}
//dump ($form);
$this->_view['form'] = $form;
}[/code]
以前的版本,比如不能为空啊,不是int型这些都会直接显示在提交后的页面上的。。 我都是把默认生成的验证去除的
模型抛出异常与外部对接,是非常优雅的事情,值得支持的 除了第一点,其他好像一直都是这样的吧 [quote]我都是把默认生成的验证去除的
模型抛出异常与外部对接,是非常优雅的事情,值得支持的
[size=2][color=#999999]jerry2801 发表于 2009-6-30 22:11[/color] [url=http://qeephp.com/bbs/redirect.php?goto=findpost&pid=46937&ptid=7892][img]http://qeephp.com/bbs/images/common/back.gif[/img][/url][/size][/quote]
呃。就是图这个功能方便。 [quote]除了第一点,其他好像一直都是这样的吧
[size=2][color=#999999]dualface 发表于 2009-6-30 22:21[/color] [url=http://qeephp.com/bbs/redirect.php?goto=findpost&pid=46939&ptid=7892][img]http://qeephp.com/bbs/images/common/back.gif[/img][/url][/size][/quote]
不一样啊。原来会直接返回到表单元素的边上,除了一些行为插件的验证要自己捕捉异常。
页:
[1]