Size: a a a

2020 February 07

DS

Dmitriy S in Yii Framework 3
Оно все равно добавляется в самом приложении в MiddlewareDispatcherFactory
источник

DS

Dmitriy S in Yii Framework 3
Дмитрий
Я про сам мидлвар. Он же будет совсем бесполезным
Он автоматом префикс определять умеет, если проект не в public
источник

Д

Дмитрий in Yii Framework 3
А если я хочу отличный от автомата?
источник

А

Алексей R in Yii Framework 3
то ты извращенец
источник

Д

Дмитрий in Yii Framework 3
источник

А

Алексей R in Yii Framework 3
кстати такая фигня при проксировании возможна
источник

А

Алексей R in Yii Framework 3
так что наверное не совсем извращенец
источник

А

Алексей R in Yii Framework 3
но ты сам про проксирование не сказал, так что...
источник

Д

Дмитрий in Yii Framework 3
Алексей R
кстати такая фигня при проксировании возможна
Не только. Название папки не должно завязывать на имя маршрута.
источник

DS

Dmitriy S in Yii Framework 3
Дмитрий
А если я хочу отличный от автомата?
Эта мидварь для подпапок. Извращенцы могут прямо в роутере префикс задать, осталось только решить что делать с некорректным добавлением роутов с префиксом
источник

А

Алексей R in Yii Framework 3
Dmitriy S
Эта мидварь для подпапок. Извращенцы могут прямо в роутере префикс задать, осталось только решить что делать с некорректным добавлением роутов с префиксом
а что не так? позавчерашняя версия роутера у меня нормальо работает на подпапке
источник

DS

Dmitriy S in Yii Framework 3
Dmitriy S
Фактори
class AppRouterFactory
{
   public function __invoke(ContainerInterface $container)
   {
       $routes = [
           Route::get('/test', [SiteController::class, 'test2'])->name('test')
           ];

       $router = (new RouterFactory(new FastRouteFactory(), $routes))($container);
       $router->setUriPrefix('/admincp');
       return $router;
   }
}


Экшн
public function test2(RouterInterface $router, ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
   {
       $response = $this->responseFactory->createResponse();
       $response->getBody()->write($router->generate('test'));

       return $response;
   }

Заходим на http://localhost:8080/test
Результат: /admincp/test
Тут показывал
источник

А

Алексей R in Yii Framework 3
Dmitriy S
Тут показывал
не читабельно
источник

DS

Dmitriy S in Yii Framework 3
Буквы незнакомые?
источник

А

Алексей R in Yii Framework 3
телега не растягивает сообщение на ширину экрана )
источник

А

Алексей R in Yii Framework 3
перенос слов работает
источник

А

Алексей R in Yii Framework 3
зачем ты делаешь setUriPrefix
источник

DS

Dmitriy S in Yii Framework 3
Короче, суть в том что если в роутер фактори задать роутеру префикс, то он будет генерить урлы с этим префиксом, а в самом фастроуте будут роуты без префикса.
источник

А

Алексей R in Yii Framework 3
это глобальный префикс а не префикс маршрута
источник

DS

Dmitriy S in Yii Framework 3
Алексей R
зачем ты делаешь setUriPrefix
Потому что хочу и могу, это методы интерфеса.
источник