これは、Getの代わりに投稿にajaxを使用する私の最初の試みです。まるでそれが働いているかのように私は200の応答を得るが、コントローラーの機能は決して実行されていない。Laravel 5 Ajax投稿ルート
私はajax Getリクエストでこの同じ概念を使用しましたが、正常に動作しますが、Postが期待どおりに機能していないため、Sortable( 'serialize')によってPost変数が作成されるため、Postを使用する必要があります。
成功の警告:機能は常に成功したように動作しますが、コントローラの機能は決してヒットしません(私は単純なデータベースを変更して実行中かどうかを確認しています)。
アヤックス:
$(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::post('api/sort_order_item', ['as' => 'api/sort_order_item', 'uses' =>'[email protected]']);
コントローラ:私はあなたの問題は、 があなたのブレードページのheadセクションに次の行を入れcsrf_tokenていると思う
public function SortOrderItem()
{
$this_item = \pmms\Checklist_template_line_item::findOrFail(20);
$this_item->list_position = 1;
$this_item->save();
}
あなたを助けている場合、私に教えてください。メソッドにヒットしました。メソッドの 'dd(app( 'request') - > all())'で確認して、ブラウザの[ネットワーク]タブを確認してください。また、あなたは 'return'キーワードを使用せず、応答を返送しませんでした。 –
私はこれらのことの両方に疲れました - dd()は決してメソッドにヒットしません。 returnキーワードは何も返しません。私はChromeのネットワークタブを見て、200応答を表示しますが、直前に302を返すapi/sort_order_itemではなく、localhost/homeから来ています。 – circle1
その後、物事のような 'auth'のリダイレクトがあります。 –