Как в laravel 5.* в паттерне маршрута прописать знак процента?
Есть такой маршрут "Blore%27s_Razor" и паттерн $router->pattern('author', '[-a-zA-Z0-9_%]+'), но он не работает, laravel выбрасывает not found http exception. Всё из-за знака процента, потому что остальные маршруты, в которых его нет работают нормально. Когда я ищу обычным preg_match, то паттерн срабатывает. Как это решить? Спасибо!
Владислав: тогда вставляйте другие символы в регулярное выражение. %27 - это закодированная кавычка (можете в консоли хрома ввести decodeURI('%27') и увидите). Ларавел раскодирует строку, а затем примеряет к ней патерн.
Я это написал к тому, что это не правильная логика, у меня тысячи записей и там может быть куча разных символов и я просто о них не знаю и каждый перечислять это выстрел в ногу. Неужели в Laravel всё так тупо сделано?
Владислав: У вас неверный подход, зачем вы пытаетесь приделать паттерн там, где не знаете самого регулярного выражения? сделайте адрес /author/{slug} без всякого паттерна и ищите по slug в базе данных имя автора, а затем выводите то что вам нужно.