Вложенные маршруты Slim 3 Framework Rest

Есть ли способ сделать это:

1. $app->get('/phonenumbers', \PhonenumbersController::class . ':index');
2. $app->get('/users/1/phonenumbers', \PhonenumbersController::class . ':index');

Хотелось бы, чтобы второй маршрут разрешил:

$app->get('/phonenumbers?user_id=1', \PhonenumbersController::class . ':index');

В основном мне нужен user_id, доступный в качестве параметра запроса. Возможно ли это в Slim3? Без внесения перезаписей .htaccess.

Спасибо.


person Tali Luvhengo    schedule 22.03.2017    source источник


Ответы (1)


Да, вы можете добавить параметр в путь, который будет доступен в request

$app->get('/users/{user_id}/phonenumbers', \PhonenumbersController::class . ':index');

...

class PhonenumbersController
{
    public function index($request, $response)
    {
        $request->getAttribute('user_id');
    }
}
person Max P.    schedule 22.03.2017