slo_nik 
    
    
        
        
        
        Можно, но изначально был установлен knp) Всё работало и тут такой финт ушами!
    
 
    
    Юра 
    
    
        
        
                    
                
        
        Сори за офтоп. Язык вульва продолжает развиваться. Уже успешно компилиться такой код
    
 
 
    
    The Ant 
    
    
        
        
                    
                
        
        есть идеи как превратить это барахло в красивую строчку, одну? Потому что эррей_мап не работает с ошибками от валидатора симфы, там сраный объект какой-то.
    
 
 
    
    Vlad 
    
    
        
        
        
        Сделай  normalizer для ConstraintViolationList и спряч это барахло.
    
 
    
    Andrey 
    
    
        
        
        
        доброго дня.
        а подкажите, как на symfony6 doctrinebundle инсталлится?
        если поставить doctrine/doctrine-bundle:"2.5-x-dev", то он ищет doctrine.orm, причем если задампить то, где он его ищет - то вываливается стандартное содержимое doctrine.orm из doctrine.yaml
        если попытаться поставить symfony/orm-pack, в том числе версии dev-main, то все заканчивается тем, что doctrine/doctrine-migrations-bundle поддерживает symfony/framework-bundle до 5 версии, в том числе 3.2.x-dev
        
        что я делаю не так?..
    
 
    
    Andrey 
    
    
        
                    
                        
                            
                            доброго дня.
                    а подкажите, как на symfony6 doctrinebundle инсталлится?
                    если поставить doctrine/doctrine-bundle:"2.5-x-dev", то он ищет doctrine.orm, причем если задампить то, где он его ищет - то вываливается стандартное содержимое doctrine.orm из doctrine.yaml
                    если попытаться поставить symfony/orm-pack, в том числе версии dev-main, то все заканчивается тем, что doctrine/doctrine-migrations-bundle поддерживает symfony/framework-bundle до 5 версии, в том числе 3.2.x-dev
                    
                    что я делаю не так?..
                        
                    
                
        
        
        Для информации, решилось так:
        php8.0 /php/composer_v2.php require doctrine/orm:"2.11.x@dev"
        
        возможно, хватит и стабильной версии.
    
 
 
    
    jenia 
    
    
        
        
        
        Хочу поменять язык через слушатель но не получается отображать ошибке на нужном языке. Всегда работает только по умоклчанию (английский). Дебажил и я задаю нужную  локал в приведенном файле но почему ошибка только на английском - я не понимаю :(
        
        https://gist.github.com/evgeniy123/470b07b16d29aaf5ff78a23a294e4cdc
        
        Controller:
        $request->getCurrentRequest()->getLanguages()
        [0]=> « fr »
    
 
    
    Юра 
    
    
        
        
        
        А почему там закоменчен код
    
 
    
    jenia 
    
    
        
                    
                        
                            
                            А почему там закоменчен код
                        
                    
                
        
        
        public function process()
        {
            $locale = self::parseLocale(
                $this->request->getCurrentRequest()->headers->get('Accept-Language'),
                $this->locales
            );
            $this->request->getCurrentRequest()->setLocale( $locale);
        }
        
        Уже и так исправил и все равно не работает  🙁
    
 
 
    
    Юра 
    
    
        
        
        
        Проверь что твой листенер вызывается до Локаль листенера
    
 
    
    Юра 
    
    
        
        
        
        Который собственно устанавливает транслейтеру локаль
    
 
    
    Юра 
    
    
        
        
        
        Я поэтому не люблю листенеры
    
 
    
    Юра 
    
    
        
        
        
        Хер пойми что за чем идет и что где меняется
    
 
    
    Юра 
    
    
        
        
        
        Код размазан получается как лапша по тарелке
    
 
    
    jenia 
    
    
        
                    
                        
                            
                            Хер пойми что за чем идет и что где меняется
                        
                    
                
        
        
        у меня в листенере устанавливается верная французская локал. Затем смотрю что после в самом контроллере так же она сохраняется.  а вот когда захожу в валидатор то там идет сброс => « en » :(
    
 
 
    
    Юра 
    
    
        
        
        
        The custom listener must be called before LocaleListener, which initializes the locale based on the current request. To do so, set your listener priority to a higher value than LocaleListener priority (which you can obtain running the debug:event kernel.request command).
    
 
    
    Юра 
    
    
        
        
        
        Вот этот исключи момент пожалуйста
    
 
    
    Юра 
    
    
        
        
        
        То что в контроллере ты получаешь нужнцю локаль из риквеста не значит что транслейтор её использует
    
 
    
    jenia 
    
    
 
    
    Юра 
    
    
        
        
        
        Ну вот теперь ты знаешь что с листенерами надо еще контролировать что за чем вызывается
    
 
    
    Юра 
    
    
        
        
        
        Реально такой антипаттерн этот ивент бас жуть
    
 
    
    jenia 
    
    
 
    
    Vlad 
    
    
        
        
        
        Добрый, подскажите кто как решает вопрос с документацией валидационных рулов с api doc бандлом
    
 
    
    Alexander 
    
    
        
        
        
        Все равно остается не ясным, зачем описывать правила валидации в доке.
    
 
    
    Alexander 
    
    
        
        
        
        В вашем кейсе достаточно перечислить возможные константы и их значения, как мне кажется.
        
        Правила валидации это логика, по сути вы хотите описать как правильно дублировать код с сервера на клиенте в своей документации.
    
 
    
    Andrey 
    
    
        
        
        
        Всем привет. Хочу сделать предложку новостей, примерно как в вк. То есть пользователь предлагает новость, она отправляется на модерацию, на модерации админ может нажать опубликовать или отклонить. И вот у меня есть админка easy admin. Может быть возможно как-то в ней такую панель для модерации реализовать? Я вот гуглю, но что-то пока без результата, кто-то может делал подобное?
    
 
    
    eshumeyko 
    
    
 
    
    Andrey 
    
    
 
    
    Andrey 
    
    
 
    
    eshumeyko 
    
    
 
    
    The Ant 
    
    
        
        
        
        О нифига, дизайн поменяли наконец таки на сайте симфы?
    
 
    
    Sergey Romanenko 
    
    
 
    
    Sergey Romanenko 
    
    
        
        
        
        Я для своей документация как только не выкручиваюсь чтобы всем угодить. Мозг ломаю чтобы ее сделать дружелюбной. А дока симфони почему то написана по принципу - и так сойдёт
    
 
    
    Sergey Romanenko 
    
    
        
        
        
        Кстати
    
 
    
    Sergey Romanenko 
    
    
        
        
        
        тут похоже баг в симфони консоли https://github.com/symfony/console/blob/5.3/Color.php#L178 крайне сложно было его поймать, но это return (int) $diff * 100 / $v; нифига int не возвращает, а вместо него предательский float возвращает и некоторых случаях получается вот такая шляпа  получается тогда - PHP Fatal error:  Uncaught TypeError: Return value
    
 
    
    Sergey Romanenko 
    
    
        
        
        
        должно жеж быть что то вроде такого: return intval((int) $diff * 100 / $v);
    
 
    
    Sergey Romanenko 
    
    
        
        
        
        я просто за основу своего класса для работы с цветами барл симоновский и только так решил у себя эту проблему https://github.com/termage/termage/blob/dev/src/Utils/Color.php#L336
    
 
    
    Alexander 
    
    
 
    
    Sergey Romanenko 
    
    
        
        
        
        есть поиск да и вообще какая нибудь логическая структура и навигация, а не просто ридми файл
    
 
    
    Shokha 
    
    
        
        
        
         dd($request->files);
         приходить пустой когда метод PUT 
          а когда POST все good!
        в чем может быть проблема?
    
 
    
    Pavel 
    
    
        
        
        
        могу ошибаться, но мне кажется PUT не подходит для передачи файлов
    
 
    
    Ismail 
    
    
        
        
        
        Hello
    
 
    
    Ismail 
    
    
        
        
        
        i have a problem
    
 
    
    Ismail 
    
    
        
        
        
        Need help
    
 
    
    Katulos 
    
    
        
        
        
        do a barrel roll
    
 
    
    Kirill 
    
    
        
        
        
        Hello Ismail. If you have certain question, write it without "hello, ihvae a problem"
    
 
    
    Alexey Mishurovskiy 
    
        
            
        
            
     
    
        
        
        
        Всем привет. Как правильно орагнизовать слудующую историю: 
        Например у нас есть некое количество типов писем в системе: Регистрация, восстановление пароля, и т.д. Соответственно отправляется асинхронно через messageBus 
        Варианта реализации вижу несколько : 
        Во всех вариантах есть сервис который занимается тем, что кладет в сообщение в очередь
        1) Вызывем что-то типа EmailManager->sendRegistrationEmail(XXX) затем он кладет в очедерь полностью сформированное сообщение, которое отвечает только за рассылку сообщений о регистрации (sendRegistrationEmailMessage), затем хэндлер оборачивает его в шаблон и рассылает, 
        2) все то же самое, только хэндлер получает id юзера и уже все достает на своей стороне 
        3) вместо sendRegistrationEmailMessage делаем sendEmailMessage в котором указываем, например, класс, метод и параметры для обработки, Хэндлер ищет этот сервис, вызывает метод и передает туда параметры, то есть унифицируем асинхронную отправку писем. 
        4) ваш вариант. 
        В каждом варианте есть свои + и - и не могу однозначно решить какой лучше испольховать
    
 
    
    Alexander 
    
    
        
        
        
        Шаблон и данные для шаблона (private array $data) можно убрать в сообщение. Регистрация это, или напоминание что деньги не аккаунте заканчиваются - при таком подходе код хендлера будет один на все случаи.
    
 
    
    Alexey Mishurovskiy 
    
    
 
    
    Alexey Mishurovskiy 
    
    
        
        
        
        в сообщение это получается пихать уже смысла нет, т.к. оно станет тяжелым
    
 
    
    Alexey Mishurovskiy 
    
    
        
        
        
        Прошлый раз когда я делал очень мощную рассылку на очереях у меня передавался хэндлер, но тогда не было message bus и это было года 4 назад.. а тут погуглил и не нашел ничего. везде примеры и 1 типом сообщения. Ничего сложного и интересного в примерах нет
    
 
    
    Alexey Mishurovskiy 
    
    
        
        
        
        то есть в моем понимании: 
        1 шаг : метод в сервисе, который формирует сообщение в шину (а он вообще нужен или сообщение в шину формировать  прям где это нужно: контроллер, эвент, другой сервис)
        2 шаг. понять единое сообщение на все письма, или на каждое отдельно 
        3 шаг - хендлер - единый хэнлер на все, или на каждое сообщение свой, действия выполнять прям в хэнжлере или вынести это так же в отдельный сервис, чтобы хэндлер был тонким
    
 
    
    Alexander 
    
    
 
    
    Alexey Mishurovskiy 
    
    
 
    
    Alexander 
    
    
        
        
        
        Типа того да
    
 
    
    Alexander 
    
    
        
        
        
        Они же не завязаны на сообщение, т.е. не зависят от контекста
    
 
    
    Alexey Mishurovskiy 
    
    
        
        
        
        ну это спорно
    
 
    
    Alexander 
    
    
        
        
        
        Если они зависят от контекста, то контекст надо в дату положить и передать в шаблон :)
        
        Не говорю что это единственно верный способ.
    
 
    
    Alexander 
    
    
 
    
    Alexey Mishurovskiy 
    
    
 
    
    Olga 
    
    
        
        
        
        ребят а что в пхп называют "пайкорн"
    
 
    
    Юра 
    
    
        
        
        
        О сайт симфы обновился
    
 
    
    Юра 
    
    
        
        
        
        Только заметил
    
 
    
    Артем 
    
    
        
        
        
        Кто имел дело с  league/oauth2-server-bundle? Помогите в нем разобраться
    
 
    
    Артем 
    
    
        
        
        
        Я установил бандыл и выполнил базовою настройку и не понимаю что делать дальше
    
 
    
    Dmitry 
    
    
 
    
    Артем 
    
    
        
        
        
        Использовать для безопасного доступа клиентов (web,  мобильный клиент) к api
    
 
    
    Артем 
    
    
        
        
        
        Да
    
 
    
    Dmitry 
    
    
        
                    
                        
                            
                            Да
                        
                    
                
        
        
        Тогда теперь сгенерируйте ему все нужные ключи как в примерах https://oauth2.thephpleague.com/installation/
        
        и подключите их и маршруты https://github.com/thephpleague/oauth2-server-bundle/blob/master/docs/index.md
    
 
 
    
    Dmitry 
    
    
        
        
        
        Потом сгенерируйте и примените его миграции и создайте клиентов в консоли как в https://github.com/thephpleague/oauth2-server-bundle/blob/master/docs/basic-setup.md
    
 
    
    Артем 
    
    
        
        
        
        Это я уже выполнил
    
 
    
    Dmitry 
    
    
        
                    
                        
                            
                            Это я уже выполнил
                        
                    
                
        
        
        Значит теперь надо пробовать редиректить на /authorize и получать токены через /token с фронтенда или мобильного приложения
    
 
 
    
    Артем 
    
    
        
        
        
        Понятно
    
 
    
    Артем 
    
    
        
        
        
        На эндпоинте`/authorize` пишет
        {
            "error": "invalid_client",
            "error_description": "Client authentication failed",
            "message": "Client authentication failed"
        }
    
 
    
    Dmitry