2

投稿に値を渡すようにしています。私は、選択値を取って、これを作成した後、ユーザーが他のフォームをコンパイルし、それを他のルートポストに送信し、検証をチェックします。 しかし、それは動作しません。 Route.phpMethodNotAllowedHttpException RouteCollection.php行218

Route::get('administrator/','[email protected]'); 
Route::get('administrator/select','[email protected]'); 
Route::post('administrator/create','[email protected]'); 
Route::post('administrator','[email protected]'); 

AdministratorController

public function create(Request $request){  
    $chapterS=SubChapters::where('ChapterName',$request->chapters)->get(); 
    return view('administrator_pages.create',compact('chapterS','request')); 
} 

public function store(Request $request){ 
    //dd($request->all()); 
    $this->validate($request,['IdQuestion'=>'required']); 
    return 'store'; 
} 

administrator_pages.create

@extends('app') 

@section('content') 



{{Form::open(['url'=>'administrator'])}} 
<div class="input-group"> 
     <span class="input-group-addon" id="basic-addon1">Capitolo Scelto:</span> 
     {!! Form::text('Chapter',$request->chapters,['class'=>'form-control','readonly'=>'readonly']) !!} 
</div> 

<br> 

<div class="input-group"> 
    <span class="input-group-addon" id="basic-addon1">Sotto Capitolo: </span> 

     <div class="dropdown"> 


      <select name="SubChapterID"class="btn btn-default dropdown-toggle"> 
      @foreach($chapterS as $chapter) 
       <option value="{{$chapter->SubChapterID}}">{{$chapter->SubChapterID}}</option> 
      @endforeach 

      </select> 

     </div> 

</div><!--//SUBCHAPTERID--> 
<br> 

<div class="input-group"> 
    <span class="input-group-addon" id="basic-addon1">Id Domanda :</span> 

    {!! Form::text('IdQuestion',null,['class'=>'form-control']) !!} 
</div><!-- ID QUESTION --> 
    <br> 
<div class="input-group"> 
    <span class="input-group-addon" id="basic-addon1">Immagine: </span> 

    {!! Form::text('UrlImg',null,['class'=>'form-control']) !!} 
</div><!-- URL IMG--> 
    <br> 
<div class="input-group"> 
    <span class="input-group-addon" id="basic-addon1">Domanda:</span> 

    {!! Form::textarea('Contenent',null,['class'=>'form-control','rows'=>'5']) !!} 
</div><!-- Contenet --> 
    <br> 



     <div class="input-group"> 

      <span class="input-group-addon" id="basic-addon1">Risposta:</span> 
      <!-- <div class="form-control">&nbsp;-->&nbsp; &nbsp; 
{!!   Form::radio('Answer', 'Vero') !!} Vero  &nbsp; &nbsp; 
{!!   Form::radio('Answer', 'Falso') !!} Falso 

</div> 

<!-- </div>--> 



    <br> 
<div class="input-group"> 
    <span class="input-group-addon" id="basic-addon1">Spiegazione:</span> 

    {!! Form::textarea('Explanation',null,['class'=>'form-control','rows'=>'5']) !!} 
</div><!-- Explanation--> 
    <br> 

    {!! Form::submit('Avanti',['class'=>'btn btn-default']) !!} 
{{Form::close()}} 
@if($errors->any()) 

    <ul class="alert alert-danger"> 
     @foreach($errors->all() as $error) 
      <li>{{$error}}</li> 
     @endforeach 
    </ul> 

@endif 



@stop 

エラー

1/1 MethodNotAllowedHttpException in RouteCollection.php line 218: 

    in RouteCollection.php line 218 
    at RouteCollection->methodNotAllowed(array('POST')) in RouteCollection.php line 205 
    at RouteCollection->getRouteForMethods(object(Request), array('POST')) in RouteCollection.php line 158 
    at RouteCollection->match(object(Request)) in Router.php line 821 
    at Router->findRoute(object(Request)) in Router.php line 691 
    at Router->dispatchToRoute(object(Request)) in Router.php line 675 
    at Router->dispatch(object(Request)) in Kernel.php line 246 
    at Kernel->Illuminate\Foundation\Http\{closure}(object(Request)) 
    at call_user_func(object(Closure), object(Request)) in Pipeline.php line 52 
    at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 44 
    at CheckForMaintenanceMode->handle(object(Request), object(Closure)) 
    at call_user_func_array(array(object(CheckForMaintenanceMode), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 136 
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 
    at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 
    at Pipeline->Illuminate\Routing\{closure}(object(Request)) 
    at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103 
    at Pipeline->then(object(Closure)) in Kernel.php line 132 
    at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 99 
    at Kernel->handle(object(Request)) in index.php line 54 

答えて

1

中であなたはcreate値を関数に投稿されているのはなぜ?それは、のようにする必要があります

Route::get('administrator/create','[email protected]'); 
+0

Validatorはgetメソッドでエラーを返します。私はそれを忘れました! –

1

{{Form::open(['url'=>'administrator/create'])}} 

理由に、あなたのadministrator_pages.createファイルに

{{Form::open(['url'=>'administrator'])}} 

を変更してみてください: あなたはフォーム投稿に[email protected]関数を呼び出したいです。そのためのURLは、そう

Route::post('administrator/create','[email protected]'); 

ようroutes.phpで定義されており、当然のことながら、前述@sachithとして、あなたのcreate要求がをGET でなければなりません。

だからビュー

{{Form::open(['method' => 'GET', 'url'=>'administrator/create'])}} 

そしてroutes.php

Route::get('administrator/create','[email protected]'); 
関連する問題