我需要将数据库表中的字段更新为其他字段值的MD5哈希值(sting concat)
我正在尝试通过雄辩的模型保存/更新/创建事件来执行此操作,但是看来您无法使用事件来更新/更改数据。
当前我有以下内容:
static::saving(function ($model) {
CustomLog::debug(__CLASS__, __FUNCTION__, __LINE__, 'saving fired');
$model->sku = static::generateSku($model);
});
这没有达到预期的效果;有没有办法做到这一点-我不想在各个地方为此功能添加手动调用,因为我认为它应该是自动的。
预先感谢
答案 0 :(得分:0)
您可以在模型中定义一个setter mutator,以便可以在其中保存MD5哈希并将其设置为模型属性。
答案 1 :(得分:0)
所以我想我在这里有答案。它有两个方面:
所有事件代码现在看起来都像这样:
static::saving(function ($model) {
CustomLog::debug(__CLASS__, __FUNCTION__, __LINE__, 'saving model fired');
$model->setAttribute('sku', static::generateSku($model));
});