我试图将STEAM_ID取出来给昵称。
示例:我有一个名为player_id的表行,另一个表用户名为username。我试图将STEAM_ID转换为用户名。 示例:STEAM_0:0:1236546695到用户名:ADMIN。
代码:
public function index()
{
$this->title('Banned players');
$this->indexPage([
'buttons' => null,
'brightenFirst' => false,
'sortby' => 'bid',
'tableHead' => [
'ID' => 'id',
'Player' => 'player_id',
'Length' => 'length',
'Reason' => 'reason',
'Banned by' => 'admin',
],
'tableRow' => function($bans_bans)
{
return [
$bans_bans->bid,
$bans->banusername,
$bans_bans->ban_length,
$bans_bans->ban_reason,
$bans_bans->admin_id,
];
$bans->banusername = User::where('steam_id', '=', $bans_bans->player_id)->first()->username;
},
'actions' => null,
], 'front');
}
但是得到错误:
未定义变量:禁止
有任何帮助吗?我是laravel的新手,所以不要生我的气!谢谢你的答案!
答案 0 :(得分:2)
您错误地使用$bans
而不是$bans_bans
。您需要更改2个地方。试试这段代码:
return [
$bans_bans->bid,
$bans_bans->banusername,
$bans_bans->ban_length,
$bans_bans->ban_reason,
$bans_bans->admin_id,
];
$bans_bans->banusername = User::where('steam_id', '=', $bans_bans->player_id)->first()->username;