Laravel 手动开关 Eloquent 修改器的操作方法

吾爱主题 阅读:145 2021-09-24 15:20:00 评论:0

测试框架版本是 Laravel 6.5, Eloquent 修改器使用可以参阅 -> 查看文档

修改器的手动开关的场景就是差异化的返回数据,例如在后台管理的时候,图片地址要相对路径,然后 app 端期望返回全路径的地址,这个时候就需要手动开启和关闭了。

大概操作就是在模型中声明一个静态变量,然后修改器中判断这个静态变量值是 true/false; 如果是 true 则处理,如果为 false 就不处理,具体操作:

?
1 2 3 4 5 6 7 8 9 10 11 public static $modify = true;    /**     * 获取用户的姓名.     * 判断是否需要修改及 $value 是不是空值     * @param string $value     * @return string     */    public function getFirstNameAttribute( $value )    {      return self:: $modify && $value ? ucfirst( $value ) : $value ;    }

示例代码是默认开启修改器的,无需的话可以关闭修改器,在具体业务层使用前关闭就可以的

?
1 2 User:: $modify = false;  // 关闭修改器 return $user :findOrFail(1);

如果不手动关闭,想获取原数据,而不是被修改之后的值,也可以这样获取原始值:

?
1 2 $user = User::find(1); return $user ->getOriginal( 'first_name' );

总结

以上所述是小编给大家介绍的Laravel 手动开关 Eloquent 修改器的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

原文链接:http://hxd.best/2019/12/29/Laravel-手动开关-Eloquent-修改器

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容