Вы можете установить значение в базе данных и управлять им в схеме, например:
public $items = array(
'id' => array('type' => 'integer', 'null' => false, 'default' => null, 'length' => 10, 'unsigned' => false, 'key' => 'primary'),
'quantity' => array('type' => 'decimal', 'null' => false, 'default' => '1.00', 'length' => '12,2', 'unsigned' => false),
// ^^^^^^^^^^^^^^^^^^^
'indexes' => array(
'PRIMARY' => array('column' => 'id', 'unique' => 1),
),
'tableParameters' => array('charset' => 'utf8', 'collate' => 'utf8_spanish_ci', 'engine' => 'InnoDB')
);
Это значение по умолчанию можно прочитать позднее в модели или контроллере, хотя свойство schema
модели:
// Controller example
$itemSchema = $this->Item->schema();
$defaultQuantity = $itemSchema['quantity']['default'];
// ... or:
$quantityInfo = $this->Item->schema('quantity');
$defaultQuantity = $quantityInfo['default'];
В последних версиях PHP это может быть одна строка:
$defaultQuantity = $this->Item->schema('quantity')['default'];
Это работает в Cake / 2.5 с адаптером MySQL (без представления о других сценариях).