как решить "500 (Внутренняя ошибка сервера)" (Laravel - AJAX) - PullRequest
0 голосов
/ 30 сентября 2019

У меня есть эта проблема при попытке передать данные маршрута через AJAX.

Я хочу сделать динамический выбор, который в соответствии с выбранным «Факультетом» показывает «программы», которые принадлежат этомуфакультет.

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

Route::get('selectprogramas/{id}', 'SyllabusController@getProgramas');

это модель программ

    class Programa extends Model
{
    protected $table = 'Programas';

    protected $fillable = [ 'nombre', 'perfil_profesional', 'competencias', 'facultad_id', 
    'perfil_profesional'];

    public function selectprogramas($id){
        return Programa::Where('facultad_id', $id)->get();
    }

}

это функция в контроллере

public function getProgramas(Request $request, $id){
        if($request->ajax()){
            $programas = Programa::selectprogramas($id);
            return response()->json($programas); 
        }
    }

это два избранных в html, я использую Laravel Collective

<div class="form-group col-9 font-weight-bold">
        {{ Form::label('facultad', 'Facultades:') }}
        {{ Form::select('facultad', $facultades, null, ['class' => 'form-control', 'id' => 'facultad']) }}
</div>

    <div class="form-group col-9 font-weight-bold">
        {{ Form::label('programa', 'Programas:') }}
        {!! Form::select('programa', ['placeholder'=>'Selecciona'], null, ['id'=>'programa']) !!}
    </div>

, и это мой javascript

$("#facultad").change(function (event){
    console.log("entre!!");
    $.get("../selectprogramas/" + event.target.value + "" ,function(response, facultad){
        $("#programa").empty();
        for(i=0; i<response.length; i++){
            $("#programa").append("<option>"+response[i].nombre+"</option>");
        }
    });
});

ошибка, которую я имею, это:

enter image description here

1 Ответ

0 голосов
/ 01 октября 2019

уже решено! Я сделал это изменение в функции контроллера

public function getProgramas(Request $request, $id){
    if($request->ajax()){
        $programas = Programa::where('facultad_id', $id)->get();
        return response()->json($programas); 
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...