Size: a a a

2021 March 20

СП

Сергей Предводителев... in Yii Framework 3
Код один и тот же. В голосовалке - не просто вариант синтаксиса, а ещё и порядок выполнения мидлварей в зависимости от порядка их добавления.
источник

M

Mihail in Yii Framework 3
ок тогда ели так то что
Group::create(null)
   ->middleware(FormatDataResponse::class)
   ->routes([
       Group::create('/api')
           ->middleware(AccessCheck::class)
           ->middleware(FormatDataResponseAsJson::class)
           ->routes([
               Route::get('/post')
                   ->middleware(FormatDataResponsAsXml::class)
                   ->action([PostController::class, 'index']),
               Route::post('/post')
                   ->action([PostController::class, 'add'])
           ]),
   ]),

   // Variant 2
   Group::create(null, [
       Group::create('/api', [
           Route::get('/post', [PostController::class, 'index'])
               ->middleware(FormatDataResponsAsXml::class),
           Route::post('/post', [PostController::class, 'add']),
       ])->middleware(AccessCheck::class)
           ->middleware(FormatDataResponseAsJson::class),
   ])->middleware(FormatDataResponse::class)
источник

СП

Сергей Предводителев... in Yii Framework 3
Mihail
ок тогда ели так то что
Group::create(null)
   ->middleware(FormatDataResponse::class)
   ->routes([
       Group::create('/api')
           ->middleware(AccessCheck::class)
           ->middleware(FormatDataResponseAsJson::class)
           ->routes([
               Route::get('/post')
                   ->middleware(FormatDataResponsAsXml::class)
                   ->action([PostController::class, 'index']),
               Route::post('/post')
                   ->action([PostController::class, 'add'])
           ]),
   ]),

   // Variant 2
   Group::create(null, [
       Group::create('/api', [
           Route::get('/post', [PostController::class, 'index'])
               ->middleware(FormatDataResponsAsXml::class),
           Route::post('/post', [PostController::class, 'add']),
       ])->middleware(AccessCheck::class)
           ->middleware(FormatDataResponseAsJson::class),
   ])->middleware(FormatDataResponse::class)
м... какой вопрос?
источник

M

Mihail in Yii Framework 3
я говорю что можно реализовать оба варианта задания настроек и пусть пользуются тем как удобнее в какомто конкретном случае
источник

M

Mihail in Yii Framework 3
у меня проект большой и будет много настроек мне будет удобно юзать 1 вариант у когото мелкое апи ему 2
источник

M

Mihail in Yii Framework 3
я выше скинул пример комбинированного использования
источник

А

Алексей R in Yii Framework 3
Mihail
я говорю что можно реализовать оба варианта задания настроек и пусть пользуются тем как удобнее в какомто конкретном случае
причём это не так уж и сложно сделать. + можно будет запилить порты на конфиги Slim4 и прочих фреймворков
источник

СП

Сергей Предводителев... in Yii Framework 3
Mihail
я говорю что можно реализовать оба варианта задания настроек и пусть пользуются тем как удобнее в какомто конкретном случае
но в твоём варианте два варианта будут по разному работать
источник

M

Mihail in Yii Framework 3
почему?
источник

M

Mihail in Yii Framework 3
давай пример и я напишу код чтоб было понятнее
источник

DS

Dmitriy S in Yii Framework 3
Алексей R
причём это не так уж и сложно сделать. + можно будет запилить порты на конфиги Slim4 и прочих фреймворков
В моём пр прям сейчас оба варианта и работают.
источник

А

Алексей R in Yii Framework 3
Dmitriy S
В моём пр прям сейчас оба варианта и работают.
в моём примере тоже )
источник

СП

Сергей Предводителев... in Yii Framework 3
Mihail
давай пример и я напишу код чтоб было понятнее
А.. если принять, что мы берём одинаковый порядок, тогда да
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
А.. если принять, что мы берём одинаковый порядок, тогда да
С одинаковым названием метода мидлтварей не будет работать совместно.
источник

СП

Сергей Предводителев... in Yii Framework 3
Но во втором коде понять порядок мидлварей будет сложновато))
источник

M

Mihail in Yii Framework 3
за порядок регистрации мидлваров отвечает сам разраб это уже не ваша боль
источник

А

Алексей R in Yii Framework 3
Mihail
ок тогда ели так то что
Group::create(null)
   ->middleware(FormatDataResponse::class)
   ->routes([
       Group::create('/api')
           ->middleware(AccessCheck::class)
           ->middleware(FormatDataResponseAsJson::class)
           ->routes([
               Route::get('/post')
                   ->middleware(FormatDataResponsAsXml::class)
                   ->action([PostController::class, 'index']),
               Route::post('/post')
                   ->action([PostController::class, 'add'])
           ]),
   ]),

   // Variant 2
   Group::create(null, [
       Group::create('/api', [
           Route::get('/post', [PostController::class, 'index'])
               ->middleware(FormatDataResponsAsXml::class),
           Route::post('/post', [PostController::class, 'add']),
       ])->middleware(AccessCheck::class)
           ->middleware(FormatDataResponseAsJson::class),
   ])->middleware(FormatDataResponse::class)
а если написать так, то что будет?
Group::create('/api')
   ->middleware(AccessCheck::class)
   ->routes([...])
   ->middleware(FormatDataResponseAsJson::class),
источник

СП

Сергей Предводителев... in Yii Framework 3
Mihail
за порядок регистрации мидлваров отвечает сам разраб это уже не ваша боль
наша боль порядок выполнения)))
источник

M

Mihail in Yii Framework 3
Сергей Предводителев
Но во втором коде понять порядок мидлварей будет сложновато))
да но представь длинный код и как анализированть работу
источник

СП

Сергей Предводителев... in Yii Framework 3
Mihail
да но представь длинный код и как анализированть работу
вот и я о том же
источник