Ошибка отсутствуют необходимые параметры для [маршрут: Город] [URI: daftar / city / {id}]

Ошибка отсутствуют необходимые параметры для [маршрут: Город] [URI: daftar / city / {id}]

04.12.2019 09:13:46 Просмотров 83 Источник

Я хочу отправить данные на контроллер с ajax, но есть ошибка

Missing required parameters for `[Route: city] [URI: daftar / city / {id}].

вот мой ajax-код

 $(".province").on("change",function(){
      var id = this.value;
      console.log(id);
      $.ajax({
        type: "get",
        url: "{{ route('city') }}"+'/'+id  ,
        dataType: "json",
        success: function(data){
            console.log('');
        },
        });
});

и это мой маршрут

Route::group(['prefix' => 'vendor'], function () {
 Route::get('/city/{id}', 'Vendor\VendorController@getCity')->name('city');
});
У вопроса есть решение - Посмотреть?

Ответы - Ошибка отсутствуют необходимые параметры для [маршрут: Город] [URI: daftar / city / {id}] / Error Missing required parameters for [Route: city] [URI: daftar/city/{id}]

Farid M

04.12.2019 09:20:57

Вы используете

{{ route('city') }}

без каких-либо параметров, поэтому вам нужно изменить свой маршрут с помощью этого кода:

Route::group(['prefix' => 'vendor'], function () {
 Route::get('/city/{id?}', 'Vendor\VendorController@getCity')->name('city');
});
Является ответом!
Vikas Katariya

04.12.2019 09:21:11

попробовать это.

Route::group(['prefix' => 'vendor','as'=>'vendor.'], function () {
Route::get('/city/{id}',['as' => 'activebranch', 'uses' => 'Vendor\VendorController@getCity']);
});

Аякс.

 $(".province").on("change",function(){
      var id = this.value;
      console.log(id);
      $.ajax({
        type: "get",
        url: "{{ route('vendor.activebranch') }}"+'/'+id  ,
        dataType: "json",
        success: function(data){
            console.log('');
        },
        });
});
zahid hasan emon

04.12.2019 09:26:09

вы не можете написать это таким образом. {{ route('city') }}повторяет маршрут, который имеет параметр. но параметр здесь отсутствует. вы добавляете этот параметр позже с помощью js, но он не будет работать как его отсутствие, когда php повторяет маршрут. вы можете сделать это таким образом

$(".province").on("change",function(){
    var id = this.value;
    var url = '{{ route("city", ":id") }}';
    url = url.replace(':id', id);
    $.ajax({
        type: "get",
        url: url,
        dataType: "json",
        success: function(data){
            console.log('');
        },
    });
});
Adrian Edy Pratama

04.12.2019 09:29:04

Вы не можете использовать маршрут ('Город') без его параметра,

Если вы хотите простой способ без помощника laravel, вы можете попробовать изменить его следующим образом :

$(".province").on("change",function(){
      var id = this.value;
      console.log(id);
      $.ajax({
        type: "get",
        url: "daftar/city/" + id  ,
        dataType: "json",
        success: function(data){
            console.log('');
        },
        });
});
Закрыть X