Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
TYPO3 FormFactory如何在自定义验证器中访问多个值?_Typo3_Typo3 9.x - Fatal编程技术网

TYPO3 FormFactory如何在自定义验证器中访问多个值?

TYPO3 FormFactory如何在自定义验证器中访问多个值?,typo3,typo3-9.x,Typo3,Typo3 9.x,任务非常简单-我们有两个字段,一个用于startdate,另一个用于enddate。一个自定义验证器工作正常,可以验证startdate是否在将来。第二个自定义验证器应该验证enddate是否在startdate之前。所以验证器需要两个值,startdate和enddate 我们在FormFactory中创建表单: $page = $this->form->createPage('event'); $startDateEl = $page->createElement('sta

任务非常简单-我们有两个字段,一个用于startdate,另一个用于enddate。一个自定义验证器工作正常,可以验证startdate是否在将来。第二个自定义验证器应该验证enddate是否在startdate之前。所以验证器需要两个值,startdate和enddate

我们在FormFactory中创建表单:

$page = $this->form->createPage('event');
$startDateEl = $page->createElement('start', 'Text');
$startDateEl->addValidator($this->futurestart);
$endDateEl = $page->createElement('end', 'Text');
$endDateEl->addValidator($this->endnoconflictstart);
以下是验证程序:

$this->futurestart = $this->objectManager->get(DateTimeFutureStartValidator::class);
$this->endnoconflictstart = $this->objectManager->get(DateTimeStartEndNoConflictValidator::class);
这是第二个验证器实现:

namespace x\x\Validator;

use TYPO3\CMS\Extbase\Validation\Validator\AbstractValidator;

class DateTimeStartEndNoConflictValidator extends AbstractValidator
{
    public function isValid($value)
    {
        // validate stuff, addError, etc...
    }
}
如何从提交的表单中访问“全部”或单个其他值

非常感谢你的帮助