как собрать числа в базе данных в laravel - PullRequest
0 голосов
/ 03 августа 2020

У меня в проекте есть плата за кошелек, теперь я хочу, чтобы когда пользователь добавлял деньги, вставлял это в предыдущее значение, как мне это сделать? Могу ли я поместить sh его в переменную, а затем добавить их?

 public function get_data_wallet(Request $request)
{

    $request->validate([
        'final_price' => 'required',
    ]);

    $res =Auth()->user()->update([
        'wallet' => floatval($request->final_price),
        ]);
    return show_message($res, 'success');
}

1 Ответ

1 голос
/ 03 августа 2020

Получить объект пользователя, получить значение кошелька, добавить новое значение к значению кошелька и сохранить его в свойстве кошелька. Если для кошелька не установлено значение по умолчанию 0.

$user = Auth()->user();

$user->wallet = ($user->wallet ?? 0) + floatval($request->final_price);
$user->save();

Для защиты свойства wallet это float, я бы применил его к модели.

protected $casts = [
    'wallet' => 'float',
];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...