Moh*_*mal 12 php laravel laravel-5 laravel-5.1
我有Foo属性使用getFooAttribute方法在显示之前格式化它,但在某些地方,我需要原始属性..所以我该怎么做
Bow*_*wer 24
从v4.2开始获取特定属性的原始值:
$originalFoo = $model->getOriginal('foo');
如果你想在大多数代码中使用mutator但有时想要访问原始值,你可以通过使用模型的getAttributes()方法获取所有属性,然后从那里获取值,例如:
$originalFoo = $model->getAttributes()['foo'];
Run Code Online (Sandbox Code Playgroud)
如果您希望直接从数据库中获取原始字段跳过 mutator,那么
$mode->getRawOriginal('attribute')
Run Code Online (Sandbox Code Playgroud)
是要走的路。$model->getOriginal()会给你 mutator 值而不是你想要的原始数据。
我使用的是5.3,我使用它 $model->getOriginal()['foo']
小智 7
$model->getRawOriginal()
Run Code Online (Sandbox Code Playgroud)
getOriginal 方法
影响的可能性:低
该
$model->getOriginal()方法现在将尊重模型上定义的任何强制转换和变异器。以前,此方法返回未转换的原始属性。如果您想继续检索原始的、未转换的值,您可以改用该getRawOriginal方法。
| 归档时间: |
|
| 查看次数: |
24509 次 |
| 最近记录: |