如何解决“ 500(内部服务器错误)”(Laravel-ajax)

时间:2019-09-30 20:04:47

标签: javascript ajax laravel

尝试通过AJAX传送路线数据时遇到此问题。

我要进行动态选择,根据选择的“学院”显示属于该学院的“程序”。

这是我的路线

order

这是Programas的模型

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();
    }

}

这是html中的两个选择,我使用Laravel Collective

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

这是我的JavaScript

<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>

我的错误是这样的:

enter image description here

1 个答案:

答案 0 :(得分:0)

已经解决! 我对控制器功能进行了更改

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