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

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

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

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 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年前 评论

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