Найти в Дзене
Поддержите автораПеревод на любую сумму
Покупайте СтеллыИ дарите их за контент
3 месяца назад
 • Вы подписаны

Уникальный индекс при мягком удалении: решаем проблему дубликатов

Пользователь обращается в поддержку: при каждом входе он видит разную историю заказов. Иногда свои, иногда чужие, иногда пустой список. Причина — три учётных записи с одним e-mail. Система аутентификации выбирает одну из них наугад, и результаты непредсказуемы. Классическое решение — уникальный индекс на столбец `email`. База данных отклоняет повторную вставку, проблема решена. Но затем появляется новое требование: пользователь должен иметь возможность удалить аккаунт и позже зарегистрироваться снова...

4 месяца назад
 • Вы подписаны

Статические переменные в PHP: использование static внутри функций

По данным исследования Exakat, конструкция static $var в теле функции встречается в каждой третьей PHP-кодовой базе. Несмотря на удобство реализации ленивой инициализации и мемоизации, этот подход сопряжён с рядом архитектурных ограничений...

4 месяца назад
 • Вы подписаны

Валидация массивов в Laravel без N+1: Form Request как построитель контекста

Применение правила exists к массивам в Form Request порождает проблему N+1 запросов: каждый идентификатор проверяется отдельным SQL-запросом. При росте количества элементов это создает неоправданную нагрузку на базу данных и увеличивает время ответа. В статье рассматривается метод решения этой проблемы с помощью prepareForValidation()...

4 месяца назад
 • Вы подписаны

JSON в браузере: import или fetch — руководство по выбору

Спойлер: import из JSON — это не замена fetch() Кажется, что новый синтаксис import data from './file.json' with { type: 'json' } проще и современнее. Но у него есть три жёстких ограничения: В статье сравнили оба подхода по безопасности, кешу, стримингу и контролю...

Поддержите автораПеревод на любую сумму
Покупайте СтеллыИ дарите их
за контент