samedi 2 avril 2016

Laravel 5 Ajax Post route

This is my first attempt to use ajax to Post instead of Get. I get a 200 response as if it were working but the function in the controller is never being run.

I used this same concept in my ajax Get requests and they work fine but the Post is not working as expected and sortable('serialize') creates a Post variable so I need to use Post.

The alert in the success: function always runs as if it were successful but the controller function is never hit (I have it making a simple database change just to verify if it is running).

Ajax:

$(function() {
  $('[id^="sortable_"]').sortable(
    {
        connectWith: '.sortable-line-item-list-5',    
        update : function (event, ui) 
        { 
        var items = $(this).sortable('serialize');  
            $.ajax({
                type: 'post',
                url: '/api/sort_order_item',
                data: {
                    'items': items,
                },
                success: function()
                {
                    alert('looks like it is working...');
                },
            });
        }
    });
    $( '[id^="sortable_"]' ).disableSelection();
});

Route:

Route::post('api/sort_order_item', ['as' => 'api/sort_order_item', 'uses' =>'ApiController@SortOrderItem']);

Controller:

public function SortOrderItem()
{
    $this_item = \pmms\Checklist_template_line_item::findOrFail(20);
    $this_item->list_position = 1;
    $this_item->save(); 
}



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire