为了账号安全,请及时绑定邮箱和手机立即绑定

Laravel访问器可以自主选择使用或者不用吗?求老司机指点!

Laravel访问器可以自主选择使用或者不用吗?求老司机指点!

守着星空守着你 2019-11-03 09:57:17
现在有这么一个需求,我在模型中定义了访问器,但是我有时会用到访问器,有时又想得到不使用访问器的原始数据。针对这个问题,我首先想到用不想用访问器的话可以使用DB,但这样又失去了模型关联的带来便利。请问这个问题如何解决?Laravel访问器可以自主选择使用或者不用吗?语言:PHP框架:Laravel5.8
查看完整描述

2 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

publicfunctiongetAttributeValue($key)
{
$value=$this->getAttributeFromArray($key);
//Iftheattributehasagetmutator,wewillcallthatthenreturnwhat
//itreturnsasthevalue,whichisusefulfortransformingvalueson
//retrievalfromthemodeltoaformthatismoreusefulforusage.
if($this->hasGetMutator($key)){
return$this->mutateAttribute($key,$value);
}
}
上面是Laravel获取属性的方法,可以看出并没有参数指定忽略已有的选择器。只能用一个别名属性的选择器代替,这样既可以获取原始值,也可以获取通过选择器转换后的值
当然也可以通过getOriginal获取原始值
                            
查看完整回答
反对 回复 2019-11-03
?
萧十郎

TA贡献1815条经验 获得超13个赞

//字段:test
publicfunctiongetTestExtAttribute()
{
return$this->attributes['test'];
}
//使用
//->test_ext;
                            
查看完整回答
反对 回复 2019-11-03
  • 2 回答
  • 0 关注
  • 618 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信