Ivan
У меня тоже в начале не работал remember_me, проблема оказалась тогда в том, что у меня имя пользователя было в поле username, и был геттер к нему, оказалось что этот геттер использовался под нужды авторизации. А у меня авторизация по e-mail.
Aleks
ребята а как сохранить в doctrine коллецию объектов одновременно?
Aleks
есть метод persist принимает объект
Shokha
Flush же сохраняет пачкой
Andrey
Flush же сохраняет пачкой
Он же делает 20 инсертов по 1 строке, вопрос в том скорее, как замутить 1 инсерт на 20 строк
Shokha
Unreal
Shokha
такое нету в Доктарине надо ручной писать
Юра
Доктрин плохо подходит для батч операций если критична скорость
Andrey
А зачем? Трафик экономить?
Это при 20 разницы нет, а вот при 20 тысячах - весьма заметная разница.
Плюс таже постгря умеет откладываемые индексы, и они тоже один раз обновятся
Shokha
Unreal
Разницы не вижу, у тебя flush оборачивается в транзакцию
Экономия на передаче символов
Shokha
при этом еще ID должен быть autoIncrement
Shokha
или надо ручную передать ID
Shokha
если у тебя там UUID
Shokha
есть хороший пакет для подключения платежку Stripe?
Shokha
какой можете советовать
Sergey
Maksym
народ, всем привет.
Подскажите, не могу подключится к mysql в контейнере
image: mysql:5.7
mysql -v
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Dmitry
Alexey Mishurovskiy
Парни, кто плотно работал с Class Table Inheritance? хочу уточнить моменты некоторые и тонкости реализации.
Андрей
Что-то у меня плагин EA Extended для шторма стал подсвечивать Yoda conditions. В этом какой-то скрытый смысл?
Андрей
Предлагает местами поменять )
Alexey Mishurovskiy
Alexey Mishurovskiy
Хотя да, логично
Alexey Mishurovskiy
Он предлагает избавится от инверсных условий
Андрей
То есть теперь Yoda conditions считается херней?
Alexey Mishurovskiy
Ну там 2 инспекции
Юра
Ну йода стиль был призван не допустить опечатку =
Юра
А сейчас принято писать ===
Юра
Наверное логика типо что сложно опечататься
Юра
А вообще странно хз
Юра
Может там какие-то нововведения в восьмом пыхе с работой с нул
Alexey Mishurovskiy
Юра
Кул
Андрей
Спасибо! Совсем забыл про эту настройку.
Андрей
Народ, а кто-то использовал https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/schema-representation.html в миграциях?
Alexey Mishurovskiy
Alexey Mishurovskiy
имхо
Alexey Mishurovskiy
Какой лучший способ запамить 2 объекта друг на друга ? мне надо из Сущности сделать DTO для внешней апихи. самый красивый вариант вижу деномализовать затем массив нормализовть обратно в DTO. при этом в целевой ДТОшке прописать маппинг
Alexey Mishurovskiy
Alexey Mishurovskiy
не очень понимаю чем не устраиют нормальные SQL
Alexey Mishurovskiy
а, все, увидел в чем фишка. он умеет тоже генерить нужные запросы
Юра
Alexey Mishurovskiy
Юра
https://github.com/mark-gerarts/automapper-plus
Юра
Этот например
Юра
https://youtu.be/ePhAj8ktiEA
Юра
Поржал
Alexey Mishurovskiy
Alexey Mishurovskiy
нефиг заниматься на нем несвойственным делом :)
Юра
Да там не про то )
Dima
Всем привет. Использую данный функционал.
https://symfony.com/doc/5.2/security/login_link.html
Можно ли как-то пользователя залогиненного данным образом отличать от стандартного логина?
Попросили для этого случая урезать ACL к многим роутам и не знаю как это сделать.
Для симфони это воспринимается как стандартный логин
Dima
Там можно дописать кастомный success_handler, но в какую сторону двигаться не знаю
Dima
Ах да
Ещё в добавок попросили отправлять на почту не 1 ссылку для логина, а сразу 5. Бред )
И каждая должна давать доступ на конкретный роут и никуда иначе
Симфони со своей стороны генерирует единственную ссылку с гет-параметрами:
user=test-2@example.com
expires=1623675379
hash=OTM4YzVl...
Я могу 5 раз дополнить эту ссылку своим гет-параметром и записать в базу чуть что
Дальше в success_handler редиректить в зависимости от этого дополнительного гет-параметра.
Но как прикрыть доступ к другим роутам?
Юра
Можешь навесить логин листенер
Юра
И в нем попробовать определить с какой ссылки пришел юзер и чет там сделать
Юра
Например поставить какую-то специальную куку
Dima
Для логина этим способом есть success_handler — туда попадаем исключительно в случае успешного логина. Этот хандлер на входе возвращает Request и TokenStorage
В этот момент можно записать какую-то сессию с допустимым роутом и после этого сделать редирект на этот роут.
Ещё наверное реализовать onKernelRequest, который будет разрешать входить лишь на тот роут, что записан в сессию
Юра
Далее можешь написать свой Voter например и в контроллерк делать сверху $this->denyAccessUnlessGranted('SOMEROLE')
Юра
И он пусть куку смотрит
Dima
Спасибо )
Юра
Вообщем вотер и логин листенер посмотри в эту сторону
jenia
Прошу прощения, но есть ли ack у messenger на comsomer’ e rabbitmq ?
Юра
Когда учишь новый фреймворк
jenia
Юра
Это когда учишь с++ )
Юра
Та ну. Джава простая
Юра
Там сложно накосячить
Юра
А иде еще исправит то что компилятор недоправил
Юра
В джаве самое сложное это грёбаный gradle
Юра
Плюсы в которых хз где определнный макрос моторыц иде даже не может распарсить
Юра
И где надо по девять конструкторов писать на олин клас
Юра
А как инкапсуляцию делать без геттеров сеттеров
Юра
В пхп можно сделать как в котлине?
Типо
var name: String
private set
Юра
Незя