📜  Phalcon模型行为

📅  最后修改于: 2021-01-07 09:29:07             🧑  作者: Mango

Phalcon模型行为

行为是行为的共享,模型使用这些行为来重用代码。 ORM提供一个API来实现模型中的行为。为了实现行为,我们有其他选择,例如事件和回调,可以提高行为效率。

内置行为如下:

Name Description
Timestampable It allows to automatically updates a model’s attribute saving the datetime when a record is created or updated.
SoftDelete Instead of permanently delete a record it marks the record as deleted changing the value of a flag column.

实作

它实现了Timestampable的预定义行为,该行为包含单个事件或完整事件的许多选项。

addBehavior(
            new Timestampable(
                [
                    'beforeCreate' => [
                        'field'  => 'created_at',
                        'format' => 'Y-m-d',
                    ]
                ]
            )
        );
    }
}

现在,使用php函数'time''format'创建数组选项:

addBehavior(
        new Timestampable(
            [
                'beforeCreate' => [
                    'field'  => 'created_at',
                    'format' => function () {
                        $datetime = new Datetime(
                            new DateTimeZone('India/Delhi')
                        );

                        return $datetime->format('Y-m-d H:i:sP');
                    }
                ]
            ]
        )
    );
}