Size: a a a

2020 December 19

ПГ

Павел Г. in symfony
@vudaltsov Благодарю за разжовывание :)
источник

N

Nikita in symfony
Всем привет, нужно доделать бэк (Symfony, MVC). Немного личного кабинета, локализацию, а также парсеры для контента (матчи по баскетболу и хоккею). Если админы не против, то пишите в ЛС ставку в час
источник

ВУ

Валентин Удальцов... in symfony
Валентин Удальцов
в крайнем случае нет ничего плохого сделать

catch (ConstraintViolationException $exception) {
   if (str_contains($exception->getMessage(), 'email_unique_key')) {
       throw new EmailNonUnique()
   }

   if (str_contains($exception->getMessage(), 'inn_unique_key')) {
       throw new InnNonUnique()
   }

   throw $exception;
}
напоминаю, что str_contains можно пользоваться через https://github.com/symfony/polyfill-php80, даже если у вас 7.1
источник

MM

Maksim Masiukevich in symfony
Валентин Удальцов
а что тебе не нравится? какой принцип это нарушает? ну кроме того, что inn и email кто-то забыл разделить на разные модули
Скорее так: кто-то замешал авторизацию и бизнесовые данные.
источник

ПГ

Павел Г. in symfony
Maksim Masiukevich
Скорее так: кто-то замешал авторизацию и бизнесовые данные.
Да какие бизнеовые данные. У меня вот регистрация где одним экшеном email,phone,inn  и все это уникально должно быть
источник

ПГ

Павел Г. in symfony
Даже пусть это разные таблицы, все равно под одной транзакцией будут
источник

MM

Maksim Masiukevich in symfony
Павел Г.
Да какие бизнеовые данные. У меня вот регистрация где одним экшеном email,phone,inn  и все это уникально должно быть
Ну, а логин по всем 3?
источник

ПГ

Павел Г. in symfony
Maksim Masiukevich
Ну, а логин по всем 3?
нет, но уникальность должна быть
источник

ПГ

Павел Г. in symfony
по 2 из них логин
источник

ПГ

Павел Г. in symfony
С этой вот стратегией, у меня правда еще вопрос возник. Вот у нас разные модули, эксепшены уникальности должны быть внутри этих модулей.  Но транзакция то будет снаружи этих модулей, а значит и обработка и создание своих экзепшенов (как показал Валентин), то же где то -  выше. Банально тот же flush.
$repo->perist($aggr1);
$repo2->persist($aggr2);
flush();
Ошибка то появится в flush(), который вообще вне всех модулей; И где тут делать свои Exception уникальности?

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

AS

Artem Shubin 🖖 in symfony
Друзья, сорри за еще один немного нубский вопрос.
Есть форма входа на симфони, я хочу ее в блок вынести, для чего внаглую вставляю в тфиг контроллер и получаю отличную форму входа.
Но есть, как говорится, нюанс.
1) форма не имеет action, поэтому обновляет текущую страницу и ничего не происходит.
2) может есть быстрый способ аякснуть это дело? 🤔 Что-то сходу красивое решение не придумалось, а чувствую, что это делается как-то просто очень. Но пока не расковырял я все тонкости безопасности и работу в этом направлении, отсюда и вопрос.
Буду признателен даже за пинок на нужную ссылку, дальше уже сам разберусь.
источник

AS

Artem Shubin 🖖 in symfony
Так, сорри, 1й вопрос уже отпал, я нашел twig шаблон формы 😅
источник

AS

Artem Shubin 🖖 in symfony
Все, вопросы отпали, все сработало в десяток строк лишнего кода.
источник

в

вαғғσмεттι in symfony
можете, пожалуйста, подсказать хороший гайд по новой секьюрности в симфе? доки посмотрел, нихера не понял
источник

АЯ

Александр Яковлев... in symfony
новой? Она ж с 4 версии не менялась
источник

МФ

Максим Федоров... in symfony
Александр Яковлев
новой? Она ж с 4 версии не менялась
источник

в

вαғғσмεттι in symfony
да, я про это. в доках не понял, а гайдов или примеров реализации не нашел
источник

MB

Max B in symfony
        $qb
           ->addSelect('COUNT(1) as count')
           ->join('b.entity', 'cla')
           ->join('cla.entity2', 'cl')
           ->where('cla.recomendation = 1')
       ;
подскажите, есть запрос, возвращает масив с двумя елементами в котором  обьект и значение каунт, можно ему как то скормить дто что бы возваращал вместо масива, или это нужен кастомный гидратор, либо есть другие способы ??
источник
2020 December 20

RD

Roman Dykyi in symfony
А почему у тебя 2 елемента если ты count получаешь?
источник

RD

Roman Dykyi in symfony
Если мне нужен count я в таких случвях использую DAO и получаю число без DTO
источник