Ошибка 302 после отправки формы POST в Laravel - PullRequest
0 голосов
/ 12 октября 2019

Я получаю:

Метод GET не поддерживается для этого маршрута. Поддерживаемые методы: POST.

на 302 ошибка после отправки формы.

Я пробовал

php artisan route:cache

переключение между маршрутами:: get и route :: post

TranscationController.php

public function store(TransactionRequest $request)
{
   $suser = User::findOrFail($request->s_uid);
   $ruser = User::where('uid',$request->r_uid)->first();
   //...
   //...
   //...
   return redirect()->route('transfer');
}

web.php

 Route::get('/', 'HomeController@home')->name('login');
 Route::get('/contact', 'HomeController@contact')->name('contact');
 Route::get('/home', 'HomeController@home')->name('home');
 Route::get('/transfer', 'HomeController@transfer')->name('transfer');
 Route::get('/account', 'HomeController@account')->name('account');
 Route::get('/transactionHistory/{id}', 'TransactionController@show')- 
 >name('show');
 Route::post('/transactions', 'TransactionController@store')- 
 >name('store');
 //Route::resource('transaction', 'TransactionController');
 Auth::routes();

Transfer.blade.php

    <form action="{{ route('store') }}" method="POST" >
      @csrf 
      <input type="text" id="UID" value="{{old('r_uid')}}"class="" 
      name="r_uid" placeholder="UID">
      <input type="number" id="amount" class="" value="{{old('amount')}}" 
      name="amount" placeholder="0.0$">
      <input type="hidden" name="s_uid" value="{{Auth::id()}}">
      <input type="submit" class="" value="Send">
    </form>

я также заметил, что если вместо этого я использую route :: resource, то при ошибке 302 я не получаю ошибку MethodNotAllowed, я перенаправлюсь на метод индекса TransactionController

1 Ответ

2 голосов
/ 12 октября 2019

Не могли бы вы попробовать еще раз, как это-

web.php

Route::resource('transactions', 'TransactionController');

Transfer.blade.php

<form action="{{ route('transactions.store') }}" method="POST" >
  @csrf 
  <input type="text" id="UID" value="{{old('r_uid')}}"class="" 
  name="r_uid" placeholder="UID">
  <input type="number" id="amount" class="" value="{{old('amount')}}" 
  name="amount" placeholder="0.0$">
  <input type="hidden" name="s_uid" value="{{Auth::id()}}">
  <input type="submit" class="" value="Send">
</form>

А затем очистить кеш -

php artisan cache:clear
php artisan route:cache
php artisan config:clear
php artisan view:clear
...