Laravel 5

MethodNotAllowedHttpException No message

  • Avatar de JerryBauduin
    Membre depuis :
    10/02/2018
    Messages :
    1

    Bonjour la communauté,

    Après des recherches sur le web je n'arrive toujours pas à comprendre mon bug.

    J'ai le message suivant MethodNotAllowedHttpException No message après le post d'un formaulaire en laravel 5.5

    En résumé (le code complet est plus bas):

    mes routes

    Route::get('reservation/{id}', 'AteliersController@reservation');
    Route::post('reservations', 'AteliersController@store')->name('reservation.store');

    ma view

    {!! Form::model($Model,array('route','reservation.store')) !!}

    mon controller

    public function store(Request $request)
    {
    return $request->all();
    }

    Avez vous une idée ?

    le code complet :

    Controller:


    class AteliersController extends Controller
    {
    //
    public function index()
    {
    $Ateliers=\App\Models\Ateliers::with('type')->get();
    // return $Ateliers;
    return view('ateliers',['Ateliers'=> $Ateliers]);
    }
    public function show($id)
    {
    $Atelier= Ateliers::find($id);
    $types=Type::pluck('nom','description','id');
    $form_reservation=FALSE;
    return view('atelier_details',['Atelier'=>$Atelier,'types'=>$types,'form_reservation'=>$form_reservation]);
    }
    public function reservation($id)
    {
    $Reservation = new Reservation;
    $Atelier= Ateliers::find($id);
    $Type=Type::pluck('nom','description','id');
    $form_reservation=TRUE;
    $Data = compact('Reservation','Atelier','Type','form_reservation');
    return view('reservation', ['Data'=>$Data,'Model'=>$Reservation,'Atelier'=>$Atelier]);
    }
    public function store(Request $request)
    {
    return $request->all();
    Reservation::create($request->all());

    session()->flash('message.level', 'success');
    session()->flash('message.content', 'Type was successfully recorded!');

    return Redirect()->route('ateliers');
    }

    }

    Routes

    <?php

    /
    |--------------------------------------------------------------------------
    | Web Routes
    |--------------------------------------------------------------------------
    |
    | Here is where you can register web routes for your application. These
    | routes are loaded by the RouteServiceProvider within a group which
    | contains the "web" middleware group. Now create something great!
    |
    /

    Route::get('/', function () {
    return view('index');
    });

    Route::get('/blog', function () {
    return view('blog');
    });

    Route::resource('/ateliers', 'AteliersController');

    Route::get('/contact', function () {
    return view('contact');
    });

    Route::get('/cosmetique', function () {
    return view('cosmetique');
    });
    Route::get('reservation/{id}', 'AteliersController@reservation');
    Route::post('reservations', 'AteliersController@store')->name('reservation.store');
    Route::resource('admin/type','Admin\TypeController');
    Route::resource('admin/atelier','Admin\AteliersController');

    view


    @extends('layout')

    @section('content')
    <div class='container'></div>
    <h4>Detail de la réservation</h4>
    @include ('atelier_view',$Data)
    {!! Form::model($Model,array('route','reservation.store')) !!}
    {{ Form::token() }}
    {{ Form::hidden('atelier_id',$Atelier->id)}}
    <div class="form-group">
    {{ Form::label('Nom:') }}
    {{ Form::text('nom',null,['class' => 'form-control']) }}
    </div>

    <div class="form-group">
    {{ Form::label('Prenom:') }}
    {{ Form::text('prenom',null,['class' => 'form-control']) }}
    </div>
    <div class="form-group">
    {{ Form::label('Numéro de téléphone:') }}
    {{ Form::text('na',null,['class' => 'form-control']) }}
    </div>
    <div class="form-group">
    {{ Form::label('Email:') }}
    {{ Form::email('email',null,['class' => 'form-control']) }}
    </div>
    {{ Form::submit("Réserver l'atelier",array('class' => 'btn btn-primary')) }}
    @endsection
  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    1998

    Salut,

    L'erreur MethodNotAllowedHttpException signifie que le verbe de la requête n'est pas en cohérence avec les routes attendues.

    Fais un php artisan route:list pour bien lister les routes et regarde dans les outils de développement du navigateur la requête qui est effectivement envoyée.

Vous ne pouvez pas répondre à ce sujet.