2015-12-10 176 views
0

我在Laravel是新的一起驗證。誰能幫我這個?Laravel與路由

當我使用它沒有顯示錯誤的驗證,而不是它表明:Route not defined error.

Controller.blade

public function showAccountpost(Request $request) 
    { 
     $id     = Input::get('id'); 
     //$request->merge(array_map('trim', $request->all())); 
     $messsages = array(
     // 'email.required'=>'You cant leave Email field empty', 
     'firstname.required'=>'You cant leave name field empty ', 
     'firstname.max'=>'The field has to be 20:max chars long', 
     ); 

      $rules = ['firstname' => 'required|max:20']; 
      $validator = Validator::make(Input::only('firstname'),$rules,$messsages); 
      if($validator->fails()) 
      { echo "failed"; 
       //return Redirect::to('/Usermanagement/usermanagementpost')->with_input()->with_errors($validator); 
       //return redirect('usermanagementpost')->withErrors($validator)->withInput(); 
       //return Redirect::back()->withErrors($validator); 
       return redirect()->route('Usermanagement.usermanagementpost/{id}')->withErrors($validator)->withInput(); 
      } 
      else{ 

       try{ 
        $model   = UserManagement::findorfail($id); 
        $model->firstname = $request->firstname; 
        $model->lastname = $request->lastname; 
        $model->cardno = $request->cardno; 
        $model->phone  = $request->phone; 
        $model->email  = $request->email; 
        $model->address = $request->address; 
        $model->country_id= $request->country; 
        $model->city_id = $request->city; 
        $model->password = Hash::make($request->phone); 
        $model->role  = $request->role; 
        $model->status = $request->status; 
        $model->save(); 

        Session::flash('success', 'Settings updated successfully'); 
        exit(); 
       } 
       catch(ModelNotFoundException $e) { 
        exit(); 
       } 
      } 
     } 

Route.php

Route::get('/usermanagementpost/{id}', ['middleware' => 'auth', 
    'as' => 'usermanagementpost', 'uses' => '[email protected]' 
]); 
Route::post('/userposteditajax', ['middleware' => 'auth', 
    'as' => 'userposteditajax', 'uses' => '[email protected]' 
]); 

我的觀點頁,usermanagementpost.blade

<div class="modal fade bs-modal-lg in" style="display:block;"> 
     <div class="modal-dialog modal-lg"> 
      <div class="modal-content" style="background:#fff;"> 
      <div class="modal-header"> 
       <button type="button" class="close" onclick="$.magnificPopup.close()" data-dismiss="modal" aria-hidden="true"></button> 
       <h4 class="modal-title">Edit User Details</h4> 
      </div> 
      <div class="modal-body" > 
       <div class="alert alert-success" id="ajax_success" style="display:none"> 
        <strong>Success!</strong>&nbsp;User Added Successfully 
       </div> 
       <div class="alert alert-danger" id="ajax_error" style="display:none"> 
        <strong>Error!</strong>&nbsp;<span id="ajax_error_mess"></span> 
       </div> 
       {!! Form::open(array('route' => 'userposteditajax', 'method' => 'post', 'id' => 'ajax_user')) !!} 
       <div class="form-body"> 

        <div class="form-group"> 
         <div class="col-sm col-sm-12"> 
          <div class="col-sm col-sm-6"> 
           <label>FirstName</label>          
           {!! Form::text('firstname',$users->firstname, array('class' => 'form-control','id' => 'firstname')) !!} 
          </div> 
          <div class="col-sm col-sm-6"> 
           <label>LastName</label> 
           {!! Form::text('lastname', $users->lastname, array('class' => 'form-control','id' => 'ajax_lname')) !!} 
          </div> 
         </div> 
        </div> 

        <div class="form-group"> 
         <div class="col-sm col-sm-12"> 
          <div class="col-sm col-sm-6"> 
           <label>Phone</label> 
           <div class="input-group"> 
           <span class="input-group-addon"> 
            <i class="fa fa-phone"></i> 
           </span> 
           {!! Form::text('phone', $users->phone, array('class' => 'form-control','id' => 'ajax_phone')) !!} 
           </div> 
          </div> 
          <div class="col-sm col-sm-6"> 
           <label>Email Address</label> 
           <div class="input-group"> 
           <span class="input-group-addon"> 
            <i class="fa fa-envelope"></i> 
           </span> 
           {!! Form::text('email', $users->email, array('class' => 'form-control','id' => 'ajax_email')) !!} 
           </div> 
          </div> 
         </div> 
        </div> 

        <div class="form-group"> 
         <div class="col-sm col-sm-12"> 
          <div class="col-sm col-sm-6"> 
           <label>Card No</label> 
           {!! Form::text('cardno', $users->cardno, array('class' => 'form-control','id' => 'ajax_cardno')) !!} 
          </div> 
          <div class="col-sm col-sm-6"> 
           <label>Address</label> 
           {!! Form::textarea('address',$users->address, array('size'=>'50x3','class' => 'form-control','id' => 'ajax_address')) !!} 
         </div> 
         </div> 
        </div> 

        <div class="form-group"> 
         <div class="col-sm col-sm-12"> 
          <div class="col-sm col-sm-6"> 
           <label>Country</label> 
           {!! Form::select('country',$country, $users->country_id, array('class' => 'chosen form-control','id' => 'ajax_country','data-placeholder' => 'Country','onchange'=>'select_bl(this.value)')) !!} 
          </div> 
          <div class="col-sm col-sm-6"> 
           <label>City</label> 
           {!! Form::select('city',$city, $users->city_id, array('class' => 'chosen form-control','id' => 'ajax_city','data-placeholder' => 'City')) !!} 
          </div> 
         </div> 
        </div> 

        <div class="form-group"> 
         <div class="col-sm col-sm-12"> 
          <div class="col-sm col-sm-6"> 
           <label>Role</label> 
           <div class="input-group"> 
           {!! Form::select('role',['2'=>'Administrator','3'=>'Standard User'] ,$users->role, array('class' => 'form-control','id' => 'ajax_role')) !!} 
           </div> 
          </div> 
          <div class="col-sm col-sm-6"> 
           <label>Status</label> 
           <div class="input-group"> 
           {!! Form::select('status',['1'=>'Active','0'=>'Inactive'] , $users->status, array('class' => 'form-control','id' => 'ajax_status')) !!} 
           </div> 
          </div> 
         </div> 
        </div> 

      </div> 
      <div class="form-actions"> 
       <button type="submit" id="ajax_submit" class="btn blue-hoki">Save</button> 
       <button type="button" onclick="$.magnificPopup.close()" class="btn default red" data-dismiss="modal">Cancel</button> 
      </div> 
      {!! Form::hidden('id',$users->id,array('id'=>'id'))!!} 
       {!! Form::close()!!} 
      </div> 



     </div> 
    </div> 
    <script> 

    function select_bl(a) 
    { 
     if(parseInt(a) > 0) 
     { 

      Metronic.blockUI({ boxed: true, 
      message: 'Processing...'}); 

      $.ajax({ 

        url: 'addcitypost', 
        type: 'post', 
        data: {'id':a}, 
        dataType:'json', 
        success: function(data) 
        { 

         $('#ajax_city').html(data.city_drop); 
         $(".chosen").trigger("chosen:updated"); 
         Metronic.unblockUI(); 

        } 

        });   
     } 
     else 
     { 

      $('#ajax_city').html('<option value="">No City To Display</option>'); 
      $(".chosen").trigger("chosen:updated"); 
      //sort_ticket(); 

      } 
    } 
    </script> 
    <script> 
    $('#ajax_user').on('submit', function() 
     { 
     $('#ajax_success').hide(); 
     $('#ajax_error').hide(); 
     $('#ajax_submit').prop('disabled', true); 
     var firstname = $('#firstname').val(); 
     var lastname = $('#ajax_lname').val(); 
     var cardno  = $('#ajax_cardno').val(); 
     var phone  = $('#ajax_phone').val(); 
     var email  = $('#ajax_email').val(); 
     var address = $('#ajax_address').val(); 
     var country = $('#ajax_country').val(); 
     var city  = $('#ajax_city').val(); 
     var password = $('#ajax_phone').val(); 
     var role  = $('#ajax_role').val(); 
     var status  = $('#ajax_status').val(); 
     var id   = $('#id').val();   

     $.ajax({ 
       url: '{{ url("userposteditajax") }}', 
       dataType: 'json', 
       type: 'post', 
       data: {firstname:firstname,lastname:lastname,cardno:cardno,phone:phone,email:email,address:address,country:country,city:city,password:password,role:role,status:status,id:id}, 
       success: function(data, textStatus, jQxhr){ 

        $.magnificPopup.close(); 
        location.reload(); 

        $('#ajax_submit').prop('disabled', false); 

        location.reload(); 
        $.magnificPopup.close(); 

       }, 
       error: function(jqXhr, textStatus, errorThrown){ 
        console.log(jqXhr); 
        $('#ajax_submit').prop('disabled', false); 
        var errors = jqXhr.responseJSON; 
        $.each(errors, function(key, value) { 
         $('#ajax_error').fadeIn('slow',function(){ 
          $('#ajax_error_mess').html(value); 
         }); 
        }); 
       } 
      }); 
     return false; 
     }); 
    if(jQuery('.chosen').length > 0) 
     { 
     jQuery(".chosen").chosen({no_results_text: "nothing found"}); 
     } 
    </script> 

當我運行這個它顯示的錯誤是這樣的:

**500 Internal Server Error** 
     771ms 
jquery.min.js (line 4) 
Object { readyState=4, responseText="failed<!DOCTYPE html>\n<h...iv>\n </body>\n</html>", status=500, more...} 
+0

打電話,你必須遵循laravel結構如..網址:「your_site_url /控制器/ controller_function」和這些控制器必須在路由定義 – PRANAV

+0

可以從這個鏈接訪問的想法[http://laravel.io/論壇/ 2014年4月3日 - 簡單的Ajax-後響應式-LA拉威爾-4] – PRANAV

+0

有你的問題解決了嗎?\ – PRANAV

回答

0

這意味着你沒有寫路線

userposteditajax 

警告:

除非你這樣做,否則你不應該直接使用網址沒有它的子頁面。

I.e.如果你有你喜歡的網址yourapp.com/profile/id

那麼你的Ajax調用將參考類似

yourapp.com/profile/userposteditajax 

所以,你應該給在Ajax請求的完整URL。即yourapp.com/userposteditajax

提示:

您可以在Ajax請求在一些地方定義父網址,只是CONCAT

如果你已經寫了路線此,請檢查您的網絡選項卡,

在AJAX