Size: a a a

2021 August 31

JP

Jenya Punchenko in Laravel Pro
И такой вопрос. В этой логике нужна функция которая постоянно проверят информацию на ошибки или это можно сделать "чисто"?
источник

А

Алексей in Laravel Pro
да что вы до лупов доковырялись то...
тут нужно знать только старую позицию и новую позицию
дальше забираем список из базы, разбиваем его на 3 части.
1 - отбрасываем, так как ничего не поменялось
2 - кусок на увеличение
3 кусок на уменьшение.

со вторым делаем Model::whereIn(список айдишникв на увеличение)->update(DB::raw('иимя колонки ордера + 1'))
с третьим то же самое только -1
все
источник

f

fatklass in Laravel Pro
Кто работал с throttle, подскажите. Как можно получить X-RateLimit-Remaining на стороне сервера? где хранятся эти данные? что то в кэше не могу найти..
Вот небольшой пример.

RouteServiceProvider.php

   protected function configureRateLimiting()
   {


       RateLimiter::for('test', function (Request $request) {
       return Limit::perDay(10)->by('test')->response(function () {
                   return response()->json(['errorMessage' => 'Too Many Requests'])->setStatusCode(429);
             });
       });

Маршрут
Route::middleware(['throttle:test'])->get('test', function () {
return Cache::get('test');
});
источник

JP

Jenya Punchenko in Laravel Pro
Я не могу такое добавить :(
источник

JP

Jenya Punchenko in Laravel Pro
Потом вмержить не смогу сам же)
источник

RK

Roman Kolosov in Laravel Pro
есть инкремент функция
источник

RK

Roman Kolosov in Laravel Pro
DB::table("my_table")->where('id', "rowID")->increment('column1');
источник

RK

Roman Kolosov in Laravel Pro
можно без айдишников, достаточно ордер знать
источник

EG

Egor Gruzdev in Laravel Pro
если данных не много можно просто перебором пройтись:
            $order = 0;
           /** @var PropertyDefaultValue $propertyDefaultValue */
           foreach ($property->values()->get() as $propertyDefaultValue) {
               $propertyDefaultValue->update(['order' => $order]);
               $order++;
           }
источник

RK

Roman Kolosov in Laravel Pro
логику смещения по списку можно банально в обсервер засунуть
источник

А

Алексей in Laravel Pro
та без разницы...
можно вообще отдельный список хранить в котором находиится корректная последовательность айдишников и сортировать по нему. тогда ордер в отдельном месте хранится. не нужно дергать лишний раз 100 моделей и обновлять их
источник

JP

Jenya Punchenko in Laravel Pro
У меня вопрос из серии, я бы не стал такое делать)
источник

JP

Jenya Punchenko in Laravel Pro
Все кто предлогает стащить данные из базы - это не правильно
источник

А

Алексей in Laravel Pro
аргументируйте
источник

EG

Egor Gruzdev in Laravel Pro
зависит от задачи и нагрузки на сервис, просто и понятно, а не оптимизировано пару миллисекунд, а потом наследник кода разобраться не сможет
источник

JP

Jenya Punchenko in Laravel Pro
UPDATE table SET Order=Order+1 Where id=id AND Order>=$NewOrder
UPDATE table SET Order=Order+1 Where id=id AND Order<=$NewOrder
источник

JP

Jenya Punchenko in Laravel Pro
Ну судя по тому что сказал Роман решения нету, надо ковырять
источник

JP

Jenya Punchenko in Laravel Pro
Расписать кейсы и сделать чисто все
источник

А

Алексей in Laravel Pro
вы предлагаете доверять фронту.
у нас список к примеру из 100 единиц. позиции с 1 по 100
фронт присылает:
id:300, position 207
id:2, position 101
id:102, position 100
что с этим делать будете?
источник

JP

Jenya Punchenko in Laravel Pro
последняя запись всегда будет правдой
источник