3

CakePHP 食谱介绍了以下内容 ( http://book.cakephp.org/2.0/en/models/model-attributes.html#schema ):

包含描述模型的数据库表字段的元数据。每个字段由以下内容描述:

  • 姓名
  • 类型(整数、字符串、日期时间等)
  • 空值
  • 默认值
  • 长度

其中一些是不言自明的,但这是我的问题:

  1. 名称 - 这样做的目的是什么?蛋糕书是否只是不清楚地说明其他值将存储在字段名称下的数组中,或者这是一个可以提供不同名称的键,它的用途是什么?
  2. 类型 - 我知道类型是什么,但有人可以给我一个完整的选项列表吗?如果我不知道我的选择是什么,很难说它是什么。它们是基于典型的数据库类型,还是表单类型,还是什么?
  3. Null - 这与数据库的 not null 选项相同吗?基本上只需要一个值或抛出一个错误?

出于各种原因,我想写出每个表的模式,但由于这些问题,我有点卡住了。

感谢您的帮助!

4

1 回答 1

0

您可以自己找到大部分问题的答案。要么你调试返回的数据

$this->Model->schema();

其中包含上述所有字段。或者您使用 cake shell 在 /Config/Schema 中创建/转储模式文件:

cake schema generate

这样你就可以看到蛋糕创造了什么。

因此,如果您创建一个包含所有类型字段类型的虚拟表“foobars”,您将获得针对您正在使用的当前蛋糕版本的完整模式引用。此外,您将看到您的数据库反映为蛋糕看到它。含义:如果您将一个字段设置为“default not null”,将另一个字段设置为“default null”,您将看到“null”的含义。什么类型的数据库匹配什么类型的蛋糕。

是的,名称是字段名。不过,它应该是数组键本身。

于 2012-05-01T09:30:23.853 回答