测试框架版本是 Laravel 6.5, Eloquent 修改器使用可以参阅 -> 查看文档
修改器的手动开关的场景就是差异化的返回数据,例如在后台管理的时候,图片地址要相对路径,然后 app 端期望返回全路径的地址,这个时候就需要手动开启和关闭了。
大概操作就是在模型中声明一个静态变量,然后修改器中判断这个静态变量值是 true/false; 如果是 true 则处理,如果为 false 就不处理,具体操作:
public static $modify = true; /** * 获取用户的姓名. * 判断是否需要修改及 $value 是不是空值 * @param string $value * @return string */ public function getFirstNameAttribute($value) { return self::$modify && $value ? ucfirst($value) : $value; }
示例代码是默认开启修改器的,无需的话可以关闭修改器,在具体业务层使用前关闭就可以的
User::$modify = false; // 关闭修改器 return $user:findOrFail(1);
如果不手动关闭,想获取原数据,而不是被修改之后的值,也可以这样获取原始值:
$user = User::find(1); return $user->getOriginal('first_name');
总结
以上所述是小编给大家介绍的Laravel 手动开关 Eloquent 修改器的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对站长技术网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
版本说明 代码仓库地址 点击这里 SpringCloud版本采用目前第二排的 Hoxton.SR10 ...
Ajax 是 Asynchronous JavaScript and XML的缩写。 Ajax的优点: 优点:减轻服务...
今天,在项目中遇到一个问题,两个js页面要共享一个就js对象。js全局变量和静态...
JDBC查询多条记录结果为null解决办法 代码如下 Test public void testSelect ( )...
JetBrains正在开发一种被称为Qodana的代码质量检测工具。它将JetBrains IDE具有...
目录 数据类型 运算符 写在最后的话 数据类型 基本数据类型 表示符号 所占大小by...
本文实例为大家分享了.NET使用RSA加密解密的具体代码,供大家参考,具体内容如下...
快速排序 C/C 简介 我们日常学习中排序有最简单的冒泡排序虽然很方便就可以写出...
普通方法为,分离出小时、分钟、秒分别进行判断: public static boolean timeCh...
基于 Chromium 的 Edge 浏览器近日新增了启动增强(Startup Boost)功能,微软声称...