$actsAs
$actsAs : array
use behaviors
NetCommonsApp Model
CakePHPのModelクラスを継承してます。
ドキュメントルートのapp.Mode.AppModelはこのクラスを継承しているので、
全モデルの基底クラスになります。
Overrideしているメソッドもあり、CakePHPの通常動作と異なるものがありますので注意して下さい。
__construct
getDataSource
create
__construct(boolean|integer|string|array $id = false, string $table = null, string $ds = null) : void
Constructor. DataSourceの選択
接続先DBをランダムに選択します。
boolean|integer|string|array | $id | Set this ID for this model on startup, can also be an array of options, see above. |
string | $table | Name of database table to use. |
string | $ds | DataSource connection name. |
create(boolean|array $data = array(), boolean $filterKey = false) : array
NetCommonsで使用する共通の値がセットされた結果を返します。<br> CakePHPのSchemaは、not null指定されたカラムのdefaultがnullになっているため、<br> ''(長さ0の文字列)に書き換えています。<br> https://github.com/NetCommons3/NetCommons3/issues/7
'room_id' => Current::read('Room.id'),
'language_id' => Current::read('Language.id'),
'block_id' => Current::read('Block.id'),
'block_key' => Current::read('Block.key'),
'frame_id' => Current::read('Frame.id'),
'frame_key' => Current::read('Frame.key'),
'plugin_key' => Inflector::underscore($this->plugin),
boolean|array | $data | Optional data array to assign to the model after it is created. If null or false, schema data defaults are not merged. |
boolean | $filterKey | If true, overwrites any primary key input with an empty value |
The current Model::data; after merging $data and/or defaults from database
createAll(boolean|array $data = array(), boolean $filterKey = false) : array
Initializes the model for writing a new record, loading the default values for those fields that are not defined in $data, and clearing previous validation errors.
Especially helpful for saving data in loops.
boolean|array | $data | Optional data array to assign to the model after it is created. If null or false, schema data defaults are not merged. |
boolean | $filterKey | If true, overwrites any primary key input with an empty value |
The current Model::data; after merging $data and/or defaults from database
_doSave(array $data = null, array $options = array()) : mixed
cakephpの登録処理をオーバーライド
cakephpのsave時にcreated,modifiedの項目にセットする時間が、date_default_timezone_setに影響してしまうため、 登録直前にUTCに変更し、登録後にdate_default_timezone_setを元に戻すため、オーバライドする
array | $data | Data to save. |
array | $options | can have following keys:
|
On success Model::$data if its not empty or true, false on failure
_readDataSource(string $type, array $query) : array
Findの結果をキャッシュする際、afterFindは実行させたいので、CakeのModelを継承して、カスタマイズする。
string | $type | Type of find operation (all / first / count / neighbors / list / threaded) |
array | $query | Option fields (conditions / fields / joins / limit / offset / order / page / group / callbacks) |