#php #slim
#php #slim
Вопрос:
Я переношу систему с Slim V2 на Slim V3…
В проекте v2 у меня есть что-то вроде:
$app->get('/:text', function($text) use ($app) {
if(!existsOnDb($text)) {
$app->pass();
}
$app->render("mytemplate.html", ...) //Render db content of text
});
$app->get('/hola', ....);
$app->get('/route2', ....);
$app->get('/route3', ....);
Итак, если я вызываю GET /hola
и «hola» существует в базе данных, она отображает mytemplate.html
Но если hola
не существует, он дает указание маршрутизатору «передать» и попытаться найти другой маршрут, который соответствует (в моем примере, ввод и выполнение второго определенного маршрута)
Есть ли что-то подобное в Slim V3?
Комментарии:
1. В Slim 3 тогда можно перенаправить на именованный маршрут.
2. Я не хочу перенаправление… Я хочу обработать тот же запрос другим определенным маршрутом (например, в slim v2). Потому что, если я сделал перенаправление, я думаю, что оно войдет в цикл. Как вы можете видеть, маршруты могут использовать один и тот же «шаблон»
3. И почему понижающий голос?
4. Я думаю, что Slim v3 больше не поддерживает
pass
, потому что теперь у него есть промежуточные программы. Другим вариантом было бы создать очень общий маршрут с заполнителем и визуализировать шаблон в зависимости от заданных параметров маршрутизации.5. Да, это то, что я делаю прямо сейчас .. ;). Просто любопытно, почему
pass
это недоступно в V3