誰かがこれで私を助けてくれることを願っています:
TRUE
1 つの値のみを含む列が必要です。(または '1') の値をTRUE
行に設定し、残りの行がFALSE
(または '0') であることを保証したいと考えています。
これは CakePHP でどのように達成できますか?
誰かがこれで私を助けてくれることを願っています:
TRUE
1 つの値のみを含む列が必要です。(または '1') の値をTRUE
行に設定し、残りの行がFALSE
(または '0') であることを保証したいと考えています。
これは CakePHP でどのように達成できますか?
これをデータベースレベルで強制することはできません(トリガーを使用する場合は強制できます)。そのため、Model :: beforeSave()を使用して強制する必要があります。
次のようなもの:
public function afterSave() {
if ($this->data['Model']['field'] == 1) {
// set all other records to false
$this->updateAll(array('field'=>0));
}
}
レコードが保存されるとき、「フィールド」がtrueに設定されているのはレコードだけである必要があります。