4 回答

TA貢獻(xiàn)1816條經(jīng)驗 獲得超6個贊
我們有一個名為的模型屬性cast,您可以在其中指定列名稱,如下所示:
/**
* The attributes that should be cast to native types.
*
* @var array
*/
protected $casts = [
'ratings' => 'integer',
];

TA貢獻(xiàn)1936條經(jīng)驗 獲得超7個贊
來自 Laravel 文檔:
屬性轉(zhuǎn)換?模型上的 $casts 屬性提供了一種將屬性轉(zhuǎn)換為通用數(shù)據(jù)類型的便捷方法。$casts 屬性應(yīng)該是一個數(shù)組,其中鍵是要轉(zhuǎn)換的屬性的名稱,值是您希望將列轉(zhuǎn)換為的類型。支持的轉(zhuǎn)換類型包括整型、實型、浮點型、雙精度型、小數(shù)型、字符串型、布爾型、對象型、數(shù)組型、集合型、日期型、日期時間型和時間戳型。轉(zhuǎn)換為十進(jìn)制時,必須定義位數(shù)(十進(jìn)制:2)。
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
? ? /**
? ? ?* The attributes that should be cast.
? ? ?*
? ? ?* @var array
? ? ?*/
? ? protected $casts = [
? ? ? ? 'ratings' => 'integer',
? ? ];
}
為 null 的屬性將不會被強制轉(zhuǎn)換。此外,您永遠(yuǎn)不應(yīng)該定義與關(guān)系同名的強制轉(zhuǎn)換(或?qū)傩裕?/p>

TA貢獻(xiàn)2037條經(jīng)驗 獲得超6個贊
您可以通過向模型添加protected $casts
int來在 Eloquent 中轉(zhuǎn)換屬性:
protected $casts = [ 'ratings' => 'integer', ];
這使用 return (int) $value將您的字段轉(zhuǎn)換為整數(shù)。
- 4 回答
- 0 關(guān)注
- 224 瀏覽
添加回答
舉報