anonymous@RULINUX.NET~# | Last login: 2024-11-23 04:36:15 |
Регистрация Вход | Новости | Разметка | Пользователи | Галерея | Форум | Статьи | Неподтвержденное | Трекер | Правила форума | F.A.Q. | Ссылки | Поиск |
Форум - Web-development | [RSS] |
Субж. Поддерживает ли конфиг Symfony PCRE?
Из книги:
blog:
pattern: /blog/{page}
defaults: { _controller: AcmeBlogBundle:Blog:index, page: 1 }
requirements:
page: \d+
Так вот какой синтаксис РегЭкспов тут используется?
Tux-oid(*) (2012-05-05 18:53:50)
Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20120422 Firefox/12.0 SeaMonkey/2.9
|
|
|
Скрыть
Re:YAML и PCRE.Меня беспокоит твоё желание нахачить чего-то в роутинге. Неужели недостаточно стандартной документированной функциональности? Сегодня у них сделано как пишет SystemV, завтра они перехерачат этот функционал на что-нибудь другое, а твои регекспы утратят совместимость. Постарайся обойтись без наворотов! |
Скрыть
Re:YAML и PCRE.А как-ты мне предлагаешь проверять URL на валидность допустим ввода имени пользователя. Сейчас это сделано так RewriteRule ^user_([a-zA-Z0-9\_\-\/\.]{2,})$ profile.php?user=$1 А тут как предлагаешь? К тому-же это заявленный функционал фреймворка и ниразу не хакинг. Tux-oid(*)(2012-05-05 19:33:45)
Отредактировано Tux-oid по причине "не указана" Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20120422 Firefox/12.0 SeaMonkey/2.9 |
Скрыть
Re:YAML и PCRE.>Меня беспокоит твоё желание нахачить чего-то в роутинге. Неужели недостаточно стандартной документированной функциональности? Сегодня у них сделано как пишет SystemV, завтра они перехерачат этот функционал на что-нибудь другое, а твои регекспы утратят совместимость. Постарайся обойтись без наворотов!
|
Скрыть
Re:YAML и PCRE.>Хм странно. Регулярка #([a-zA-Z0-9\_\-\/\.]{2,})$# При записи ее в параметр page:
SystemV(*)(2012-05-05 19:35:57)
Отредактировано SystemV по причине "не указана" Emacs-w3m/1.4.468 w3m/0.5.3 |
Скрыть
Re:YAML и PCRE.> А как-ты мне предлагаешь проверять URL на валидность допустим ввода имени пользователя
|
Tux-oid(*)(2012-05-05 19:40:57)
Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20120422 Firefox/12.0 SeaMonkey/2.9 |
Скрыть
Re:YAML и PCRE.>RewriteRule ^user_([a-zA-Z0-9\_\-\/\.]{2,})$ profile.php?user=$1
|
Скрыть
Re:YAML и PCRE.> Толстота. Это документированная функциональность же.
|
Скрыть
Re:YAML и PCRE.Ок. Как ты предлагаешь разрулить вариант
без
ибо зайдя по адресу /user_Tux-oid:edit В качестве имени пользователя получаем Tux-oid:edit? Tux-oid(*)(2012-05-05 19:46:05)
Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20120422 Firefox/12.0 SeaMonkey/2.9 |
Скрыть
Re:YAML и PCRE.Кстати, если поставить |
Скрыть
Re:YAML и PCRE.Если у тебя, как показано, один и тот же обработчик вызывается, то так:
И да, я сознательно заменил двоеточие слэшем. Ибо оно не нужно. |
Скрыть
Re:YAML и PCRE.>Бля. Я предвидел от ответ, но не от тебя а от анонима. А в случае когда много таких записей и они пересекаются?
|
Скрыть
Re:YAML и PCRE.> если в имени гарантированно нет ":"
|
Скрыть
Re:YAML и PCRE.> А в случае когда много таких записей и они пересекаются?
|
Скрыть
Re:YAML и PCRE.>Незачем вносить всякие сомнительные "если" когда можно отказаться от использования двоеточия в УРЛе в качестве разделителя.
|
Скрыть
Re:YAML и PCRE.> URL-ы должны остаться такими-же как сейчас.
|
Скрыть
Re:YAML и PCRE.> Есть текущие урлы
|
Скрыть
Re:YAML и PCRE.>Если убираю # то вообще ругается на то что не может распарсить yml конфиг.
Наверное ты таки забыл кавычки, про которые я ссылку дал. Ну и круглые скобки не нужны. |
Tux-oid(*)(2012-05-05 20:11:39)
Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20120422 Firefox/12.0 SeaMonkey/2.9 |
Скрыть
Re:YAML и PCRE.>Да, это будет серьёзная утрата, что ссылки из гугола на страницу редактирования профиля будут работать неправильно.
|
Скрыть
Re:YAML и PCRE.Я считаю, что слеши как раделители движок разрулит сам и это будет более эффективно. По крайней мере из книги такое впечатление. |
Скрыть
Re:YAML и PCRE.> Кроме страницы редактирования ещё и другие ссылки бывают. Тогда надо определиться, какие остаются, какие - нет.
|
Скрыть
Re:YAML и PCRE.В книге в главе про маршрутизацию указано что разделитель может быть любым движок разрулит их с одинаковой эффективностью. Tux-oid(*)(2012-05-05 20:19:30)
Отредактировано Tux-oid по причине "не указана" Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20120422 Firefox/12.0 SeaMonkey/2.9 |
Tux-oid(*)(2012-05-05 20:20:21)
Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20120422 Firefox/12.0 SeaMonkey/2.9 |
Скрыть
Re:YAML и PCRE.Где ты это вычитал? Я про случай когда паттерн /blog/{slug} может быть распознан при обращении к /blog (обрати внимание, без слеша на конце) если для slug задано дефолтное значение. Мне кажется что с двоеточием это реализовать будет значительно сложнее. |
Скрыть
Re:YAML и PCRE.> Ты сперва приведи вескую причину их изменения.
|
Скрыть
Re:YAML и PCRE.Ок. Поступим по твоему. Мне не принципиально. Ибо урлов с : всего 2. Message_(.*):edit и user_(.*):edit Правда в обоих случаях контроллеры на message_(.*) и message_(.*):edit будут разными, так-что никаких тут граблей нет. Tux-oid(*)(2012-05-05 20:32:21)
Отредактировано Tux-oid по причине "не указана" Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20120422 Firefox/12.0 SeaMonkey/2.9 |
|
|
|
Этот тред читают 1 пользователь: |
Анонимных: 1 Зарегистрированных: 0 |
Re:YAML и PCRE.
Судя по всему, да. В коде везде preg_match и все дела.
Вот тут они компилируют route, и создают обычный на вид регэксп self::REGEX_DELIMITER.'^'.$regexp.'$'.self::REGEX_DELIMITER.'s'.
А вот тут, кстати, пишут, что:
Emacs-w3m/1.4.468 w3m/0.5.3