[英]How to write a Validator in TYPO3 CMS 7+?
我將在TYPO3 CMS 7.6.x擴展中編寫一個驗證器。 我使用的是包括Fluid在內的現代MVC結構,而不是舊的pi1系統。 這是我的測試驗證器(MyownValidator.php):
namespace My\Extension\Validation\Validator;
/**
* MyownValidator
*/
class MyownValidator extends \TYPO3\CMS\Extbase\Validation\Validator\AbstractValidator {
/**
* ...
*/
public function isValid($data){
if( $data != 'hello world' ){
$this->addError('ERRORMESSAGE', 1468329929);
return FALSE;
}
return TRUE;
}
}
在模型類中,添加驗證行:
/**
* testattribute
*
* @var string
* @validate Myown
*/
protected $testattribute = '';
在清除安裝工具中的完整緩存后,什么也沒有發生。 我仍然可以使用該testattribute的任何值來創建此模型的對象。
然后,我查看了TCA配置,發現:
'eval' => 'trim,required'
有沒有辦法使用TYPO3 Fluid這樣的模型進行驗證? 還是我必須像TYPO3 CMS 4一樣編寫驗證程序?
我的錯。 我必須提供完整的合格類名,然后它可以正常工作。
/**
* testattribute
*
* @var string
* @validate NotEmpty, \My\Extension\Validation\Validator\MyownValidator
*/
protected $testattribute = '';
至少在前端它顯示驗證錯誤。 是否也可以在TCA中使用它?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.