Laravel 特定情况下的突变体

Laravel mutators on specific situations

据我了解,修改器会在保存功能(创建或更新)时更改您的属性。我可以制作 mutator 只是为了向用户显示属性,但在保存功能上保留默认值吗?

在 Eloquent 中执行此操作时的模型:

public function getSomeNameAttribute($value)
{
    return ucfirst($value);
}

^ 会改变值以便稍后在视图中显示它,它不会影响存储在数据库中的内容 table。

而且如果你使用 setter setSomeNameAttribute($value) 你可以从 db table 中提取实际值:

$model->getOriginal('attribute_name'); // Laravel V. ^5.*

$model->getRawOriginal('attribute_name'); // Laravel V. ^8.*