テーブルの特定のフィールドにデフォルトがあり、NULL が許可されていない場合、MariaDB/MySQL が通常行うように、挿入スクリプトがそれらのデフォルトを使用することが期待されます。たとえば、テーブル products に AI フィールド「id」、必須フィールド「name」、および 2 つの必須フィールド「active」と「featured」があり、どちらもデフォルトで 1 である場合、クエリは次のようになります。
INSERT INTO products (name) VALUES ('someName');
は、アクティブおよび注目の値として 1 を自動的に挿入します。ただし、Phalcon のモデルを次のように使用する場合:
$product = new Products();
$product->setName('someName');
$product->save();
「アクティブ」と「特集」が必要であるという検証エラーを返します。
Phalconツールがデフォルトをモデルクラスに収集して入力するために、モデル生成中に提供する必要があるフラグ、またはPhalconが見つかった場合にデフォルトを自動的に使用する別の方法はありますか? 最善のアプローチは、設定されていないフィールドを無視することだと思います。モデルにそれをさせることはできますか?