Size: a a a

2021 May 24

A

Adel in Laravel Pro
а чтобы делать это явно, надо отказаться от SoftDeletes и всё делать напрямую
источник

A

Alexcc in Laravel Pro
убирай soft_delete кстати как вариант в смысле если запрос упал идешь искать запись находишь и обнуляешь deleted_At
источник

ПУ

Павел Успенский... in Laravel Pro
а нельзя разве сделать прибвыляя id-SLUG ?
источник

A

Alexcc in Laravel Pro
безопасность вышла из чата
источник

ПУ

Павел Успенский... in Laravel Pro
Например /article/{Id}-SLUG - в роуте в БД у вас лежит slug и он не уникальный
источник

ПУ

Павел Успенский... in Laravel Pro
и выборка идет по id а не slug
источник

ПУ

Павел Успенский... in Laravel Pro
slug только для проверки валидации/или редиректа на правильный если slug поменялся (для SEO например)
источник

A

Alexcc in Laravel Pro
slug для безопасности  держу в курсе в основном
источник

A

Arman in Laravel Pro
но ведь между удалением и созданием может пройти много времени? а валидатор будет кричать что такая страница уже есть, хотя такой страницы как бы нет.
с другой стороны без уникального ключа есть риск создать две записи с одинаковыми значениями.
при одинаковых значениях с deleted_at не так страшно, т.к. там уже пусть вручную программист решает какая запись важнее (восстановление удаленной записи)
источник

A

Arman in Laravel Pro
проще уникальный ключ снести и жить на валидаторах) да, может две записи появится когда нибудь, но тогда и решать что глюк странный отловили )
источник

A

Alexcc in Laravel Pro
ну так решите эту проблему на уровне orm -> создание->получение ошибки -> проверка на удаление-> и снятие удаления или перезапись
источник

A

Arman in Laravel Pro
не тяжелая логика выходит? сейчас валидатор делает запрос

SELECT ... WHERE deleted_at IS NULL AND slug = "$slug"

как бы все работает, пока не удалят какую запись и не попробуют добавить такую же. валидатор пропускает, а БД посылает
источник

A

Alexcc in Laravel Pro
на уровне 1 транзакции нормальная логика.
источник

A

Adel in Laravel Pro
это конечно не на уровне валидатора надо делать... но я промолчу) не буду усложнять
источник

A

Alexcc in Laravel Pro
ну тут не все профессионалы про тригеры я еще не упоминал иначе будет каша)
источник

A

Adel in Laravel Pro
ты и так уже предложил 3 ужасных решения. костыльковых
источник

A

Adel in Laravel Pro
не надо четвертое
источник

A

Arman in Laravel Pro
если перенесу допусти на Монго?) где есть уникальные ключи, но нет всяких транзакций и тд?)
источник

BB

Beamer Beamerboy in Laravel Pro
Почему при создании файла myTrait.php в директории App\Traits он не подсвечивается как пхпшный файл и я не могу его использовать в своей модели? В чем проблема?
источник

A

Alexcc in Laravel Pro
а вы знаете лучше поделитесь? они были предложены на быструю голову для того что бы что полное сказать надо полностью бизнес задачу понимать если на то пошло.
источник