laravel5.7从db:js自动完成搜索无法识别路由

inb24sb2  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(345)

我将遵循以下教程:https://www.youtube.com/watch?v=d4ny-cbozc0
我已经做了所有的事情,但在测试时,控制台中出现以下错误:

jquery.min.js:2 POST
http://apr2.test/admin/posts/%7B%7B%20('autocomplete.fetch')%20%7D%7D
404 (Not Found)

我所做的一件不同的事情是,我希望在我的post creation页面中有搜索功能,而不是独占功能,因此我的路线如下:

Route::group(['prefix' => 'admin', 'namespace' => 'Admin', 'middleware' => 'auth'], function () {
   Route::get('/', 'AdminController@index')->name('admin');    
   Route::get('posts', 'PostsController@index')->name('admin.posts.index');
   Route::get('posts/create', 'PostsController@create')->name('admin.posts.create');
   Route::post('posts/create', 'PostsController@fetch')->name('autocomplete.fetch');
   Route::post('posts', 'PostsController@store')->name('admin.posts.store');
});

我的js/jquery代码:

// A $( document ).ready() block.
$(document).ready(function () {

    $('#country_name').keyup(function () {
        var query = $(this).val();
        if (query != '') {
            var _token = $('input[name="_token"]').val();
            $.ajax({
                url: "{{ ('autocomplete.fetch') }}",
                method: "POST",
                data: {
                    query: query,
                    _token: _token
                },
                success: function (data) {
                    $('#countryList').fadeIn();
                    $('#countryList').html(data);
                }
            });
        }
    });

    $(document).on('click', 'li', function () {
        $('#country_name').val($(this).text());
        $('#countryList').fadeOut();
    });
});

怎么了?

1sbrub3j

1sbrub3j1#

我认为问题来自于刀片,您将路由名称用作 %7B%7B 在url中被翻译为 {{ .
请再次检查您使用的代码是否正确,或者在表单元素的action标记中是否正确: {{ route ("autocomplete.fetch") }} 它不会因为一些引用而丢失。

相关问题