Laravel один route::post для группы запросов

schel4ok

Новичок
у меня на нескольких страницах сайта похожие формы, которые можно обрабатывать одной процедурой Notification

и поэтому я хочу сделать вот так, чтоб не городить кучу Route :: post и к ним кучу дублированного кода в контроллерах

Код:
Route::group(['as' => 'calculators.'], function () {

   Route::get('calculators',                   'CalculatorController@index')->name('index');
   Route::get('calculators/dveri',             'CalculatorController@dveri')->name('dveri');
   Route::get('calculators/peregorodki',       'CalculatorController@peregorodki')->name('peregorodki');
...
....

if (Request::isMethod('post')) {
    Route::post(Route::current(), 'CalculatorController@posted')->name('posted');
}
 

});
но вылезает ошибка
MethodNotAllowedHttpException in compiled.php line 9091:
 

schel4ok

Новичок
пробовал вот так


Middleware
Код:
<?php

namespace App\Http\Middleware;

use Closure;
use App\Models\Access\User\User;
use Illuminate\Support\Facades\Notification;


class CalculationDone
{

   public function handle($request, Closure $next, $guard = null)
   {
       if(isset($_POST)) {
           Notification::send(User::findOrFail(1), new CalculationDone($request));
       }
       return $next($request);
   }
}
kernel.php
Код:
protected $middleware = [
   \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
   \App\Http\Middleware\CalculationDone::class,
];

выдает ошибку
Код:
FatalErrorException in ChannelManager.php line 62: Call to undefined method App\Http\Middleware\CalculationDone::via()
   in D:\OpenServer\domains\site.new\vendor\laravel\framework\src\Illuminate\Notifications\ChannelManager.php line 62
 

AmdY

Пью пиво
Команда форума
Вроде так
PHP:
Route::post('{url}', 'PostController@handle')->where('url', '.*');
Но ты лишишься возможности использовать хелперы для построения урлов.
 
Сверху