測試框架版本是 Laravel 6.5, Eloquent 修改器使用可以參閱 -> 查看文檔
修改器的手動開關(guān)的場景就是差異化的返回數(shù)據(jù),例如在后臺管理的時候,圖片地址要相對路徑,然后 app 端期望返回全路徑的地址,這個時候就需要手動開啟和關(guān)閉了。
大概操作就是在模型中聲明一個靜態(tài)變量,然后修改器中判斷這個靜態(tài)變量值是 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;
}
示例代碼是默認(rèn)開啟修改器的,無需的話可以關(guān)閉修改器,在具體業(yè)務(wù)層使用前關(guān)閉就可以的
User::$modify = false; // 關(guān)閉修改器
return $user:findOrFail(1);
如果不手動關(guān)閉,想獲取原數(shù)據(jù),而不是被修改之后的值,也可以這樣獲取原始值:
$user = User::find(1);
return $user->getOriginal('first_name');
總結(jié)
以上所述是小編給大家介紹的Laravel 手動開關(guān) Eloquent 修改器的操作方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
您可能感興趣的文章:- laravel5.6 框架操作數(shù)據(jù) Eloquent ORM用法示例
- laravel框架數(shù)據(jù)庫操作、查詢構(gòu)建器、Eloquent ORM操作實例分析
- Laravel框架Eloquent ORM新增數(shù)據(jù)、自定義時間戳及批量賦值用法詳解
- Laravel框架Eloquent ORM簡介、模型建立及查詢數(shù)據(jù)操作詳解
- Laravel框架Eloquent ORM修改數(shù)據(jù)操作示例
- Laravel Eloquent分表方法并使用模型關(guān)聯(lián)的實現(xiàn)
- laravel7學(xué)習(xí)之無限級分類的最新實現(xiàn)方法
- laravel admin實現(xiàn)分類樹/模型樹的示例代碼
- 如何使用Laravel Eloquent來開發(fā)無限極分類