laravel8 中访问器定义了字段 在get()查询中如何获取 被访问器修改前的字段值

laravel8 中访问器定义了字段 在get()查询中如何获取 被访问器修改前的字段值

laravel8 中访问器定义了字段 在get()查询中如何获取 被访问器修改前的字段值
现在只能获取到访问器修改后的primary_unit 原值应该怎么拿

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 8
Mutoulee

你可以试试访问器定义一个新字段,比如:

public function getPrimaryUnitNewAttribute()
{
    // ...
}

如果要使用原始的属性,$item->primary_unit

如果要使用加工后的属性:$item->primary_unit_new

1年前 评论
chowjiawei

我记得有个 origin什么的 是访问未被修改的字段

1年前 评论
翟宇鑫

建议访问器不要和数据库字段重复

1年前 评论
zxlw12138 (楼主) 1年前

orm有个方法,可以获取原值。

#示例
$model->getRawOriginal('primary_unit');
1年前 评论
Mutoulee 1年前
#(laravel 7+)获取模型原始值(不应用修改器)
$model->getRawOriginal('name');

#(laravel 7以下)获取模型原始值(不应用修改器),7+修改为获取模型原始值(应用修改器)
$model->getOriginal('name');
1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!