Alexander
Потому что пользователь может вдруг стать забаненым и надо это каждый раз перепроверять.
Зачем вообще его в сессии тогда держать, вопрос скорее в этом
Alexander
Есть remeber_me, соответствие токен-юзер из него вполне достается.
Иван
Зачем вообще его в сессии тогда держать, вопрос скорее в этом
А где? Надо же сессионную ку-ку с чем-то сверить
Roman
Народ, подскажите плиз, как (и можно ли) в Symfony 5 сделать в роуте неопределённое число слагов? Типа чтобы контроллер ловил и "/shop/electro" и "/shop/electro/venik" и "/shop/chainiki" и сдавал эти слаги в массив например?
Roman
https://symfony.com/doc/current/routing.html#route-parameters
Доки я читал, сейчас оно реализовано через @Route("/shop/{cats}", name="shop", requirements={"cats"=".+"}) с последующим ручным разбором cats ("aaa/bbb/ccc/ddd") на части. Думал что есть более изящный метод. Но всё равно спасибо )
Alexander
К одному экшену контроллера можно добавить произвольное кол-во аннотаций
Alexander
Либо указать '.*' в requirements к одному слагу и парсить его уже в контроллере
Alexander
https://symfony.com/doc/current/routing/custom_route_loader.html
Shokha
Заливаю проект на сервер! Nginx+FPM www.conf
Shokha
проект
Shokha
Ошибка
Shokha
Unable to create the storage directory (/var/www/html/homevet/public_html/var/cache/dev/profiler).
Alexey Mishurovskiy
https://symfony.com/doc/current/setup/file_permissions.html
Alexey Mishurovskiy
проект
Несекурно
Shokha
Несекурно
смысле?
Alexey Mishurovskiy
Бэд практис чтобы юзер от которого работает веб сервер мог заходить по ssh
Shokha
вот щас он такой
Alexey Mishurovskiy
Ну а внутри var что
Shokha
Alexey Mishurovskiy
Alexey Mishurovskiy
ps | grep worker
Shokha
ps | grep worker
пустой
Alexey Mishurovskiy
ps | grep nginx
Shokha
ps | grep nginx
тоже нечо не вернул
Alexey Mishurovskiy
А просто ps
Shokha
Alexey Mishurovskiy
Странно, я думал у тебя от другого юзера запущен nginx
Shokha
не знаю не сколько это правильно - sudo nano /etc/selinux/config - Edit the file by set SELINUX=disabled - Restart again then it worked !
Shokha
но сработало
Katulos
Ну так, отключить selinux предлагают даже разработчики selinux
Иван
страннота у меня валидатор не хотел валидировать, пока я доктрин аннотации явно не установил хотя у меня констрейны в атрибутах
Alexander
Подозреваю что атрибуты живут в том же пакете, что и аннотации.
Иван
не, атрибут можно получить из рефлексии а аннотацию только отпарсив коммент можно предположить только, что в данный момент в атрибутах не все констрейны можно записать, но по моему это не повод не работать вообще
Alexey Mishurovskiy
продолжаю боросться со статой. запрос SELECT u.email, COUNT(distinct t.id) AS t_count, COUNT(distinct c.id) AS c_id FROM user u Left JOIN terminals t ON u.id = t.user_id AND t.agent_id = 36 Left JOIN transactions c ON c.terminal_id = t.id WHERE u.agent_id = 36 GROUP BY u.email ORDER BY t_count DESC работает корректно, однако не могу преврать его в Qb
Alexey Mishurovskiy
Alexey Mishurovskiy
уже как только не пробовал
HaSh
В указаниях значения параметров двоеточие не нужно. Т.е. ->setParameter('userId', $agent);
Alexey Mishurovskiy
Ну тут проблема в другом, как отсортировать по количеству?
HaSh
Ну тут проблема в другом, как отсортировать по количеству?
Сорян, нет времени разбираться. Думаю лучше юзать натив sql и не парится.
HaSh
Оно и быстрее и проще будет.
Alexey Mishurovskiy
Ага, а потом когда начнется фильтрация и сортировка...
Alexey Mishurovskiy
Having
а это все понятно.. я не понимаю как сделать сортировку по кол-ву в QB
Alexey Mishurovskiy
SELECT u0_.email AS sclr_0, COUNT(DISTINCT t1_.id) AS sclr_1, COUNT(DISTINCT c2_.id) AS sclr_2 FROM user u0_ LEFT JOIN terminals t1_ ON (u0_.id = t1_.user_id) LEFT JOIN transactions c2_ ON (c2_.terminal_id = t1_.id) WHERE u0_.agent_id = 36 AND (t1_.agent_id = 36 OR t1_.agent_id IS NULL) GROUP BY u0_.email ORDER BY sclr_2 DESC
Alexey Mishurovskiy
вот SQL который генерит доктрина
Alexey Mishurovskiy
он работает нормально
Alexey Mishurovskiy
последнюю строчку с Order я добавил уже руками в DB клиенте чтобы проверить
Alexey Mishurovskiy
мне из этого запроса на выходе надо получить DTOшку
Alexey Mishurovskiy
чтобы ее вывести в дизайне. QB еще использую по причине пагинации
Юра
Так а что не работает
Юра
У тебя dql и sql разные в плане ордер бай
Roman
Коллеги, подскажите, пожалуйста: Используем HttpClient, нужно сделать запрос с клиентским сертификатом. Как только его ни пытались конвертировать, одна и та же ошибка: Problem with the local SSL certificate for ..... куда бечь и что копать?
Alexey Mishurovskiy
У тебя dql и sql разные в плане ордер бай
я не понимаю как в DQL сделать этот order
Юра
Так и сделай ордер count....
Юра
Продублируй все выражение
Alexey Mishurovskiy
Продублируй все выражение
а так можно ? я пытался найти что-то типа AS
Юра
Ну попробуй работает ли
Alexey Mishurovskiy
SELECT u0_.email AS sclr_0, COUNT(DISTINCT t1_.id) AS sclr_1, COUNT(DISTINCT c2_.id) AS sclr_2 FROM USER u0_ LEFT JOIN terminals t1_ ON (u0_.id = t1_.user_id) LEFT JOIN transactions c2_ ON (c2_.terminal_id = t1_.id) WHERE u0_.agent_id = ? GROUP BY u0_.email ORDER BY COUNT(DISTINCT t1_.id) DESC
Юра
И че? Так не работает?
Alexey Mishurovskiy
работает ) а по производительности ORDER BY COUNT(DISTINCT t1_.id) DESC = ORDER BY sclr_1 DESC
Alexey Mishurovskiy
?
Юра
А что происходит если ты пытаешься запихнутл алиас в ордер бай?
Юра
Я не знаю что производительности
Юра
Может он оптимизирует
Alexey Mishurovskiy
падла блин
Alexey Mishurovskiy
еще один плюс в пользу предагрегата
Юра
Так может надо выбрать энтити хоть одну?
Юра
А то в селект у тебя одни скаляры
Юра
А у тебя там дто
Юра
Хз я так никогда не делал
Alexey Mishurovskiy
у меня там ДТО
Alexey Mishurovskiy
мне энтити уже не нужна
Alexey Mishurovskiy
ну я горю, преагрегат меня спасет. пока просто отрубил пагинацию
Shokha
С какой-то новый версии можно было использовать а конфигах if else типа