我正在尝试在使用更新或创建功能时更改模型表,但它总是使用默认的数据库表,即" Payouts" 我正在尝试将表格更改为" skyrim"通过使用fromTable函数。
$cluster_payout = 'skyrim';
$user_payout = Payout::fromTable($cluster_payout)->updateOrCreate(
['user_id' => 1],
['game_id' => 1, 'locked' => 1]);
执行代码后,它使用支付数据库和支付表。
如果我这样做
Payout::fromTable($cluster_payout)->first();
它将Payback数据库与Skyrim表一起使用。有什么想法吗?
答案 0 :(得分:1)
你有这样的尝试吗?
(new Payout)->setTable($cluster_payout)
->updateOrCreate(
['user_id' => 1],
['game_id' => 1, 'locked' => 1]
);
答案 1 :(得分:0)
通过执行以下操作来修复它:
$payout_cluster['payout'] = 'skyrim';
$payout = (new Payout)->setTable($payout_cluster['payout'])->where('user_id', $user_id)->first();
if(!$payout) {
$payout = (new Payout)->setTable($payout_cluster['payout']);
$payout->fill(['user_id' => $user_id,'cluster_id' => $cluster_id,'game_id' => $game_id,'locked' => $status]);
$payout->save();
}else{
$payout->setTable($payout_cluster['payout']);
$payout->user_id = $user_id;
$payout->cluster_id = $cluster_id;
$payout->game_id = $game_id;
$payout->locked = $status;
$payout->update();
return($payout);
}
我使用了@ Adoudeh87的代码并将其改编成我自己的代码。谢谢A c: