Юра
В билд процесс
The Ant
1 команду? )
The Ant
крч хорошая инициатива, надеюсь энтузиазм у парней не угаснес через пару месяцев 😄
Vladimir
Vladimir
точнее там 1 чел всего
Kirill
Kirill
Но там было в основном про запуск нового кода на старом пыхе и препроцессинг в реалтайме
Юра
Есть же уже язык который умеет компилироваться а кучу других языков
Alex
и для C# CLR
Kirill
Vladimir
The Ant
в симфе есть какой-то дефолтный способ получить дто с квери параметрами из запроса?
иначе говоря резолвер, который мапит query string на дто
Max
The Ant
Vlad
да напиши свой резолвер и денормализером мапь
Павел
The Ant
Vlad
а вдруг гадость подсунут?
The Ant
шта?!
Vlad
шта?!
ты же месяц назад говорил, как плох вендор лок
The Ant
небыло такого, перепутал с кем-то )
Павел
Павел
Павел
Есть либы готовые - да, а симфа резолвер не предоставляет
The Ant
The Ant
Бля а как вы фильтры то делаете? с кучей параметров в квери стринге? неужели через формы?
Vlad
тебе ж все рассписали как сделать
Vlad
вот тебе пример резолвера https://pastebin.com/jgtBNctR
The Ant
The Ant
Все таки симфа не бро для сеошника
Иван
The Ant
смешно ага
The Ant
Блеаа.... ну и как мне в урлах пагинашку сделать без костылей со слешами?
/articles/
/articles/2/
?
The Ant
Йобаный стыд, это я еще пагинашку не рисавал на беке... как люди вообще живут с симфой сервер сайд рендером? 😳 Оно ж ваще неприспособлено
Павел
The Ant
Так и надо 2 роута, чтобы урлы генерить одним неймом
The Ant
проблема в том. что оно работает только без слеша )
Павел
The Ant
одинаково чтобы было, в примере указал
Павел
The Ant
ну такое. Там гдето в доке кусок текста есть на тему, типа со слешем директория, а без слеша файл, в линуксе. Симфа типа следует этой теме. На деле выходит что если параметр динамический, то работает всё ровно наоборот
Александр
Вот про трейлинг слешей https://symfony.com/doc/current/routing.html#redirecting-urls-with-trailing-slashes
The Ant
да и привык я уже к слешам на конце, хочу их
The Ant
Александр
The Ant
6.2
Александр
Должно работать, завтра попробую. У меня на каком-то проекте слеши есть, работает. Версия насколько помню 6.1
The Ant
Вот такой path: /article/{page<\d+>}/ должен быть, чтобы со слешем работало.
Однако оно не поймает если будет просто /article/, для этого нужен другой роут с другим неймом
The Ant
и тут у нас будет проблема в шаблонах. например надо нарисовать в пагинашке 1-ю страницу, мне придется условие делать, чтобы её отрисовать, вставлять другой нейм роута
The Ant
для генерации урла
The Ant
ебанина короче
The Ant
какую?
Павел
@theantt
А это неработает ? https://symfony.com/doc/4.1/routing/optional_placeholders.html
Павел
Вроде то что нужно.
The Ant
работает, оно генерит без слеша )
The Ant
я хочу со слешом :D
Павел
Кэш чистил?)
The Ant
The Ant
оно без номера страницы не ловит
Павел
The Ant
т.е. нужен второй роут. 1 для первой страницы, и второй для последующих. Это костыльное решение как по мне
The Ant
и заставит изъебываться с генерацией урлов в шаблонах
Александр
Если не забуду завтра гляну на работе как проект был сделан, но вроде точно были слеши
Юра
Штуки со слешом проще делать в index.php
Юра
Тупо заменил глобальный SERVER путь и всё
Юра
Я каждый раз задодбался с роутером симфы делать и сделать в индексе )
The Ant
Александр
@theantt Глянул как на проекте, в общем там дикий костыль, показать сложно, надо разобрать код, но в общем всё сводится к тому, что роутеры все без слеша, а вот в index.php стоит проверка на слеш в конце, если нету делать редирект, а в SERVER пути слеш убирается.
Если получится попробуй выдернуть код отдельно, а то там тихий ужас.
The Ant
Охх, спасибо
Александр
Охх, спасибо
В общем примерно так выдернул
Роут
#[Route('/test/{page}', name: 'test', defaults: ['page' => 1], methods: ['GET'])]
public function test(int $page): void
{
dd($page);
}
В index.php в начало
$path = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
if (substr($path, -1) !== '/') {
// добавляем слеш и редиректим
}
$_SERVER['REQUEST_URI'] = trim($_SERVER['REQUEST_URI'], '/');
Можно сделать "красивше" конечно. НО это лютый костыль конечно, хотя из коробки это больше не знаю как решить, да и не встречал. В итоге у нас все страницы со слешем
Александр