简体   繁体   English

如何使用validationResover

[英]how to use validationResover

Like shown here I want to use the validationResolver to dynamically validate user inputs in my App. 如此处所示我想使用validationResolver动态验证我的应用程序中的用户输入。 Therefore I want to proove, if a condition is true in my controller. 因此,如果条件在我的控制器中为真,我想证明。 If the condition is true, I want to validate with an own validator. 如果条件为真,我想使用自己的验证器进行验证。

For that I tried that: 为此,我尝试:

public function createAction(Object $newObject) { 
    $TS = $newObject->getSomeProperty();
    $ABT = $newObject->getSomeOtherProperty();
    if ($TS === 'specialvalue') {
          $validatorResolver->createValidator('Your.Package:Foo'));
    }

But I get (of course) an 500-exception: 但我得到了(当然)500个例外:

#1: Notice: Undefined variable: validatorResolver in /var/www...

Please give me a hint how to use the $validatorResolver. 请给我提示如何使用$ validatorResolver。

I did it now this way: 我现在是这样做的:

public function createAction(Object $newObject) {
    $TS = $newObject->getSomeProperty();
    $ABT = $newObject->getSomeOtherProperty();
    if ($ABT === 'specialvalue') {
        $validatorResolver = new \TYPO3\Flow\Validation\ValidatorResolver();
        $customValidator = $validatorResolver->createValidator('Your.Package:Foo');
        $result = $customValidator->validate($TS);

        if ($result->hasErrors()) {
             $this->flashMessageContainer->addMessage(new \TYPO3\Flow\Error\Error('Here you can type in the error message!'));
            $this->errorAction()->forwardToReferringRequest();
        }

    }
    ....
    ....
}

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

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