简体   繁体   English

Phalcon验证在模型中不起作用

[英]Phalcon validation doesn't work not in model

I can't understand why this code doesn't work 我无法理解为什么这段代码不起作用

use Phalcon\Validation;
use Phalcon\Validation\Validator\Email as Email;

class LoginController extends ApiController
{
    public function indexAction()
    {
        $validation = new Phalcon\Validation();

        $validation->add('email', new Email([
            'field' => 'email',
            'message' => 'wrong email'
        ]));

        //same add

        $messages = $validation->validate($_POST);

        ...
    }
}

in result $messages == empty array even if 'email' field is wrong 在结果$ messages ==空数组,即使'email'字段错误

$validation->validate($_POST);

do nothing. 没做什么。 what wrong? 怎么了?

In this case i need validation not in model. 在这种情况下,我需要验证不在模型中。

delete this one if you are still calling full path in your code. 如果您仍在代码中调用完整路径,请删除此项。

use Phalcon\Validation;

also change this: 也改变了这个:

use Phalcon\Validation\Validator\Email as Email;

to simply: 简单地说:

use Phalcon\Validation\Validator\Email;

and you should be able to use it as this: 你应该可以这样使用它:

$validation = new Phalcon\Validation();
$validation->add('email', new Email(array(
   'message' => 'The e-mail is not valid'
)));

$messages = $validation->validate($_POST);
if (count($messages)) {
    foreach ($messages as $message) {
        echo $message, '<br>';
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM