从Zend_Form获取错误消息并以json的形式响应

Kir*_*lla 13 php ajax json zend-framework zend-form

我正在尝试从Zend_Form获取错误消息并将响应作为json.获取Zend_Form错误并以json回复的最佳做法是什么?

<?

class SomeController extends Zend_Controller_Action {

    public function indexAction() {

        $form = new Application_SomeForm();
        if ($form->isValid( $this->getRequest()->getPost() )) {
            //do something here
        }       
        $this->_helper->json($form->getErrorMessages());

    }

}
Run Code Online (Sandbox Code Playgroud)

我无法通过$form->getErrorMessages()错误获得错误,但如果经过测试则会出现错误print_r($form->gerErrors())

Array
(
    [email] => Array
        (
            [0] => isEmpty
        )

    [password] => Array
        (
            [0] => isEmpty
        )

    [foreign] => Array
        (
        )

    [login] => Array
        (
        )

)
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是:

a)如何获取表单的所有错误消息?

b)是否有任何Json Wrapper用于处理ajax提交的表格?例如$jsonResponse->setErrorStatus()->addFormErrors($form)

bub*_*aba 18

你试过getMessages吗?我认为这是您希望用于获取人性化错误消息的方法.

你写你试过getErrorMessagesgetErrors,不过getMessages是一个不同的野兽干脆,这就是为什么我在问你是否已经试过了.

getErrors返回代码,getErrorMessages返回已注册的自定义错误消息(似乎很可能没有),同时getMessages返回实际的人性化错误消息.