//KeyService.php
public static function defineReservedKeys($gameId, $qty): array
{
$defineCurrency = CurrencyEnum::EUR->value;
$currencies = Currency::where('id', '!=', $defineCurrency)->pluck('id')->toArray();
$reservedKeys = Key::getRandomActiveKeys($gameId, $defineCurrency, $qty)->get();
do {
$randomCurrency = $currencies[rand(0, count($currencies) - 1)];
$reservedKeys = Key::getRandomActiveKeys($gameId, $randomCurrency, $qty)->get();
unset($currencies[$randomCurrency]);
} while ($qty != $reservedKeys->count());
return $reservedKeys->pluck('id')->toArray();
}
bu yazdığım fonksiyonun amacı bana verdiğim keys tablosunda cost_currency_id si aynı olan benim belirttiğim miktardaki Key'collection una ait id'leri vermek böyle yapabildim.
Bunu tek sorgu ile yapmanın bir oluru var mıdır ? Ya da daha basit bir yöntem ?