Update multiple data laravel dari ajax

Mas / mbak saya ingin bertanya

Flow : - Ada data yg ingin diupdate melalui dynamic form (field bisa ditambah) - ketika btn update di klik, akan passing data melalui ajax ke controller - controller akan melakukan fungsi update

Problem Ditemukan error method save() does not exist

View

<form id="editdatas">
 <input type="hidden" name="identifikasi[]" id="identifikasi" value="">
 <input type="hidden" name="idsubartikelasset[]" id="identifikasiaset" value="">
 <input type="text" name="alt_sub_artikel[]" id="alt_sub_artikel_0" placeholder="Alt" class="col-sm-12 form-control" value="">
  <input type="text" name="subarticle_title[]" id="subarticle_title_ind_0" placeholder="Title Ind" class="col-sm-12 form-control" value="">
 <input type="text" name="subarticle_title_en[]" id="subarticle_title_en_0" placeholder="Title Eng" class="col-sm-12 form-control" value="">
<button type="submit" class="btn btn-default save-edit">Edit</button>
</form>

Ajax :

     $('#editdatas').on('submit',function(e){
			e.preventDefault();
			$.ajax({
				url: '{{ route("admin.page.apartment-review.update-ajax") }}',
				type:'POST',
				data: $(this).serializeArray(),
				success: function(data) {
         console.log(data);
				}
			});
		});

Controller :

 public function updateArtikel(Request $request){
      if( $request->ajax() ) {
        try{
          $input = $request->all();
          $id = $input['identifikasi'][0];
          // dd($id);
          foreach($input['subarticle_title'] as $key => $value) {
            $data = ApartmentWikiArticle::find($input['identifikasi'][$key])->get();
            $id = $input['identifikasi'][$key];
            $title = $input['subarticle_title'][$key];
            $title_en = $input['subarticle_title_en'][$key];
            $content = $input['subarticle'][$key];
            $content_en = $input['subarticle_en'][$key];

            $data->title = $title;
            $data->title_en = $title_en;
            $data->content = $content;
            $data->content_en = $content_en;
            $data->save();
          }
          echo json_encode($data);
        }
        catch(\Throwable $th) {
          echo "0";
        }

apakah ada yang salah dengan foreach saya? even sudah mengikuti standar dari dokumentasi laravel namun tetap error save doesn't exist

avatar kresnanoobs
@kresnanoobs

16 Kontribusi 1 Poin

Diperbarui 5 tahun yang lalu

Tanggapan

Kresna coba kalau bertanya tampilkan kode yang relevan saja dengan pertanyaan, jangan copypaste semuanya, karena yang mau bantu akan susah bacanya, coba bagian seperti div, col dll, yang tidak berhubungan dihapus dan bagian yg simple saja yang ditinggalkan

2 Jawaban:

Jawaban Terpilih

Coba Ganti variable $data dalam foreach jd seperti ini <pre> $data = ApartmentWikiArticle::find($input['identifikasi'][$key]); // Hapus ' -&gt;get() ' // Atau seperti ini $data = ApartmentWikiArticle::where('id', $input['identifikasi'][$key])-&gt;first(); </pre>

avatar Rismal
@Rismal

131 Kontribusi 105 Poin

Dipost 5 tahun yang lalu

solve gan kalau boleh tau kenapa y gan? kan y sintaks nya sm saja gan mohon pencerahan

avatar kresnanoobs
@kresnanoobs

16 Kontribusi 1 Poin

Dipost 5 tahun yang lalu

Tanggapan

Semua sdh ada di dokumentasinya Laravel, silahkan cek disini https://laravel.com/docs/5.7/eloquent#retrieving-single-models

Login untuk ikut Jawaban