KupueIIIKo
@KupueIIIKo

Подмена контроллера возможно?

Приходят запросы
Route::get('/{ver}/d/{guid}',['uses'=>'Files@InputFileName']);

Так вот, у меня {ver} меняется. Соотвественно в папке Controlles есть папка Files
В ней папки 0.1 0.2 Как заставить с помощью {ver} обращаться в нужной папке. Название контроллера не меняется. То есть он должен вернуть Files\{ver}\Files@InputFileName
  • Вопрос задан
  • 243 просмотра
Пригласить эксперта
Ответы на вопрос 3
Helldar
@Helldar
Just do it.
Названия методов, классов, неймспейсов, функций и прочего должны всегда начинаться с буквы.

Также в ларе принято именовать методы в формате camelCase.

Route::get('1.0/d/{guid}', 'Files\v1b0\Files@inputFileName');

Route::get('2.0/d/{guid}', 'Files\v2b0\Files@inputFileName');

Route::get('2.1/d/{guid}', 'Files\v2b1\Files@inputFileName');
Ответ написан
@Kostik_1993
Web Developer
Как-то так, необязательно что именно это заработает, но направление такое если я вас верно понял
Route::get('/{ver}/d/{guid}', function($ver, $guid) {
        $class = '\\App\\Http\\Controllers\\Files\\'.$ver.'\\Files';
        $controller = new $class();
        return $controller->index($guid);
});
Ответ написан
@verahkus
попробуйте через конфиг .env
Route::get('/'.env('VERSION').'/d/{guid}',['uses'=>'Files@InputFileName']);

и в .env прописать
VERSION=0.1 (когда поменяется версия 0.2)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы