Получение 404 Ошибка при запросе контроллера - Laravel - PullRequest
0 голосов
/ 01 декабря 2018

Я получаю ошибку 404 при попытке связаться с контроллером.

Пожалуйста, найдите информацию ниже,

Мой addlum.blade.php вместе со скриптом

 <div class="container">
        <div class="row">
            <div class="col-md-12">

                {{ Form::open()}}
                <div class="form-group">
                    <label for=""> District</label>
                    <select name="district_option" id="district_option" class="form-control">
                        <option value="0" disabled="true" selected="true">------ Select District --------</option>
                        @foreach ($districts as $key => $district)
                        <option value="{{$district->id}}">{{$district->district_name}}</option>

                        @endforeach
                    </select>
                </div>

                <div class="form-group">
                    <label for=""> Municipality</label>
                    <select name="municipal_option" id="municipal_option" class="form-control">
                    </select>
                </div>
                {{Form::close()}}
            </div>
        </div>
    </div>
</div>
</div>



<script>
    $('#district_option').on('change',function(e){
console.log(e);
var municipal_id = e.target.value;
var BASEURL = "{!! url('/engineers-association-guntur/public/admin/feature/') !!};";
console.log(municipal_id);
$.get( BASEURL + 'districtview?municipal_id=' + municipal_id, function(data){
    console.log(data);
    $('#municipal_option').empty();
    $('#municipal_option').append('<option value="0" disabled="true" selected="true">------ Select District First--------</option>');
 $.each(data,function(index, municipalObj){
    $('#municipal_option').append('<option value="'+ municipalObj.id +'"> '+ municipalObj.municipal_name +' </option>');


        })
        });
        }); 

</script>

web.php -

    Route::get('/addslum', 'newSlumController@listSlums');
Route::get('/engineers-association-guntur/public/admin/feature/municipalview', 'newSlumController@municipalView');

Код контроллера:

 <?php

namespace App\Http\Controllers;


use Illuminate\Http\Request;
use Illuminate\Support\Facades\Input;
use App\District;
use App\Municipality;


use Illuminate\Support\Facades\DB;


class newSlumController extends Controller
{

public function listSlums()
{
    $districts = District::all();
      return view('admin.feature.addslum',compact('districts'));
}   

public function municipalView()
{
    $districts_id = Input::get('municipal_id');
    $municipalities = Municipality::where('district_id', '=', $districts_id )->get();
      return response()->json($municipalities) ;
}   

Я проверил инструмент Chrome Network, но я мог видеть, что запрос генерируется на URL, но я не получил никакого ответа.

Снимок экрана с выводом enter image description here

Приношу свои извинения, если вопрос повторяется.Я новичок в Laravel

Ответы [ 3 ]

0 голосов
/ 01 декабря 2018

Вы делаете запрос на этот URL:

/engineers-association-guntur/public/admin/feature/districtview

, но у вас есть это в вашем web.php

Route::get('/engineers-association-guntur/public/admin/feature/municipalview', 'newSlumController@municipalView');

Они не совпадают.муниципальный вид <> районный вид

0 голосов
/ 01 декабря 2018

Изменить

var BASEURL = "{!! url('/engineers-association-guntur/public/admin/feature/') !!};";

на

var BASEURL = "{!! url('/engineers-association-guntur/public/admin/feature/') !!}";

и маршрут к

Route::get('/engineers-association-guntur/public/admin/feature/{type}', 'newSlumController@municipalView');

Вы также можете использовать это

{{route('alias_of_route', ['type => 'municipalview'])}}

Надеюсь, это поможет.

0 голосов
/ 01 декабря 2018

Похоже, что запрос не вызывает правильный маршрут, хотя трудно сказать наверняка, так как ваш скриншот консоли обрезан.Доступные маршруты (web.php):

  1. / addlum

  2. / ассоциация инженеров-guntur / public / admin / feature / муниципальный просмотр

Но на вашем скриншоте выглядит, как будто запрос пытается что-то вроде этого:

/ engineer-association-guntur / public / engineer-association-guntur / public /admin / feature

Кроме того, у вас есть ошибка в вашем коде (лишняя точка с запятой) в следующей строке, которая добавляет ошибочную точку с запятой в URL запроса:

var BASEURL = "{!! url('/engineers-association-guntur/public/admin/feature/') !!};";

Должно быть:

var BASEURL = "{{ url('/engineers-association-guntur/public/admin/feature/') }}";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...