无法保存更新方法上的数据

时间:2019-07-16 16:06:55

标签: php laravel-5 eloquent

我想将nilai tema表的平均结果中的数据保存到nilai akhir表中。但它显示错误“ array_key_exists():第一个参数应为字符串或整数”。

这是我的更新方法

public function update(Request $request, $id)
{
    $nilai = nilaiTema::find($id);
    $rataP = ($request->input('p_nilai1') + $request->input('p_nilai2') + $request->input('p_nilai3')) / 3;
    $rataK = ($request->input('k_nilai1') + $request->input('k_nilai2') + $request->input('k_nilai3')) / 3;
    $nilai->p_nilai1 = $request->input('p_nilai1');
    $nilai->p_nilai2 = $request->input('p_nilai2');
    $nilai->p_nilai3 = $request->input('p_nilai3');
    $nilai->p_rata = $rataP;
    $nilai->k_nilai1 = $request->input('k_nilai1');
    $nilai->k_nilai2 = $request->input('k_nilai2');
    $nilai->k_nilai3 = $request->input('k_nilai3');
    $nilai->k_rata = $rataK;
    $nilai->save();

    $nilaiRataPenalaran = DB::table('nilai_temas')
    ->where([
        ['idKelas','=',$nilai->idKelas],
        ['mataPelajaran','=','   Pendidikan Agama dan Budi Pekerti']
    ])
    ->avg('p_rata');
    $nilaiRataKetrampilan = DB::table('nilai_temas')
    ->where([
        ['idKelas','=',$nilai->idKelas],
        ['mataPelajaran','=','   Pendidikan Agama dan Budi Pekerti']
    ])
    ->avg('k_rata');

    $nilaiAkhir = nilaiUtsUas::all()
    ->where([
        ['idKelas','=',$nilai->idKelas],
        ['mataPelajaran','=',$nilai->mataPelajaran]
    ])-first();
    $nilaiAkhir->nilaiPenalaran=$nilaiRataPenalaran;
    $nilaiAkhir->nilaiKetrampilan=$nilaiRataKetrampilan;
    $nilaiAkhir->save();

    return redirect('/daftarSiswa')->with('success', 'jadwal telah di rubah!');
}

我的模型为空,因为该关系位于MySql数据库中,并且我确定问题并非出自该关系。

0 个答案:

没有答案