型号:PlayerResult
protected $fillable = ['result']
result
是db
db中的保存值是'win',例如,当通过eloquent访问时返回为true(布尔值)。
$var = PlayerResult::where('event_id', $event->id)->whereNotIn('player_id', [$player->id])->first();
在dd($var)
的{{1}}结果为真,attributes
结果为'胜'
我尝试了(在模型中)但仍然相同......
那么为什么它以布尔值的形式返回?以及如何解决它?感谢
修改
我认为@TimLewis解决了这个问题,但即使我将列名重命名为随机名,仍然存在这个奇怪的问题。
将original
添加到查询后,->select('result AS exampleVariable')
会返回result
,但true
会返回exampleVariable
- 所以我认为列的名称有问题,但问题仍未解决甚至我改名那栏......
答案 0 :(得分:1)
确保您没有以下功能:
function getResultAttribute
或
function result
你也可能有兴趣看看
function toArray()
方法,因为它可以在返回数组之前进行一些强制转换。
如果它们不在您的模型中,则应验证模型中使用的任何自定义特征,因为这些特征可能会在这些特征中定义。