0

对于我正在写的东西,我想获得一个模型的空副本,或者一个具有默认值的副本。

所以,通常它可能会返回类似

array(
  'id' => '4',
  'name' => 'Object name',
  'somekey' => 'Some key\'s value',
  'someotherkey' => '1',
  'created' => '2012-04-22 17:11:31',
  'modified' => '2012-04-22 17:11:31'
)

相反,我希望它返回一个键完整的数组,但值完全为空,或者甚至更好(如果可能)使用我可以在模型本身中指定的默认值。这可能吗?

4

2 回答 2

1

听起来您正在寻找模型方法schema()。这将返回所有表字段/类型。例如:

class User extends AppModel {

    public function emptyDataset() {
        $fields = $this->schema();

        if(is_array($fields)) {
            return array_keys($fields);
        } else {
            return false;
        }
    }

}
于 2012-04-28T20:04:24.473 回答
1

如果您只是想创建一个填充了默认值的用户,您可以使用Model::create(). 它在架构中搜索您为数据库定义的默认值,并相应地填写记录数据。

于 2012-04-28T23:14:46.017 回答