我正在学习CakePHP 3.X版本,我对表格验证感到困惑 在文档(http://book.cakephp.org/3.0/en/core-libraries/form.html)中,您需要创建一个类来验证表单,并且您有两种方法来验证数据。
第一种方法:
protected function _buildSchema(Schema $schema)
{
return $schema;
}
第二种方法:
protected function _buildValidator(Validator $validator)
{
return $validator;
}
他们之间真正的区别是什么? 在文档示例中这样说:
_buildSchema 用于定义FormHelper用于创建HTML表单的架构数据。您可以定义字段类型,长度和精度。
_buildValidator 获取可以附加验证程序的Cake \ Validation \ Validator实例。
我很困惑,因为如果你看一下文档中的例子,你会看到他在第二种方法中验证输入长度和类似的东西,但在第一种方法的描述中,他说你可以这样做太?
有可能向我解释他们之间的真正差异并向我展示一个例子吗?
谢谢!
答案 0 :(得分:1)
数据库系统的数据库模式是以数据库管理系统(DBMS)支持的正式语言描述的结构。术语“模式”是指将数据组织为数据库构建方式的蓝图。
架构描述了您的数据结构,表格布局。蓝图。
在计算机科学中,数据验证是确保程序对干净,正确和有用的数据进行操作的过程。它使用例程,通常称为“验证规则”,“验证约束”或“检查例程”,检查输入到系统的数据的正确性,有意义性和安全性。规则可以通过数据字典的自动化工具实现,也可以通过包含显式应用程序验证逻辑来实现。
验证是检查您放入数据库的数据到描述数据结构的模式的过程。
您需要先描述您的架构。您通过表单输入的数据已经过验证。
此外,文档也很清楚,我认为你只是误解了它:你可以定义字段类型,长度和精度。定义的东西不是验证一些东西。 :)