流框架 - 如何使用 validationResover



如此处所示,我想使用 validationResolver 在我的应用程序中动态验证用户输入。因此,我想证明我的控制器中的条件是否为真。如果条件为真,我想用自己的验证器进行验证。

为此,我尝试了:

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

但我(当然)得到一个 500 例外:

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

请给我一个如何使用$validatorResolver的提示。

我现在这样做了:

public function createAction(Object $newObject) {
    $TS = $newObject->getSomeProperty();
    $ABT = $newObject->getSomeOtherProperty();
    if ($ABT === 'specialvalue') {
        $validatorResolver = new TYPO3FlowValidationValidatorResolver();
        $customValidator = $validatorResolver->createValidator('Your.Package:Foo');
        $result = $customValidator->validate($TS);
        if ($result->hasErrors()) {
             $this->flashMessageContainer->addMessage(new TYPO3FlowErrorError('Here you can type in the error message!'));
            $this->errorAction()->forwardToReferringRequest();
        }
    }
    ....
    ....
}

相关内容

最新更新