bie*_*ior 3 validation typo3 extbase typo3-6.2.x
在Extbase中,我通常会在控制器中自己处理表单验证,特别是当我需要高级场景时,但现在我很简单,但是有很多字段的大表单,所以我决定不浪费时间而只使用TYPO3的验证器.到目前为止它一般都很好用,无论如何我不能强制Extbase在验证之前调整值,结果Extbase节省了很多空间......所以它无效,示例:
/**
* @var string
* @validate StringLength(minimum=2, maximum=255)
* @validate NotEmpty
*/
protected $fooName = '';
Run Code Online (Sandbox Code Playgroud)
正如我所说,我有几十个领域,并希望避免手动验证它...有什么解决方案吗?
注意:我尝试了extbase_filterext,如果它有效,这将是很好的解决方案(遗憾的是在TYPO3版本中没有任何效果:6.2.6.
同样出于显而易见的原因,使用JS在表单发送之前修剪值也不是解决方案.
您可以在方法内部进行修剪set*.在调用set-ers 之后 ,Extabase的MVC过程中的验证发生.
所以,你的例子是:
/**
* @var string
* @validate StringLength(minimum=2, maximum=255)
* @validate NotEmpty
*/
protected $fooName = '';
public function setFooName($fooName)
{
$this->fooName = trim($fooName);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
460 次 |
| 最近记录: |