Example #1
0
 /**
  * Update the specified resource in storage.
  *
  * @param  HouseRequest  $request
  * @param  House  $house
  * @return Response
  */
 public function update(HouseRequest $request, House $house)
 {
     $data = $request->all();
     $data['images'] = $house->images ? $house->images : [];
     $i = 0;
     $files = json_decode($data['files_deleted']);
     foreach ($files as $file) {
         if (($key = array_search($file, $data['images'])) !== false) {
             unset($data['images'][$key]);
             $this->delete($file);
         }
     }
     foreach ($_FILES['images']['tmp_name'] as $tmpPath) {
         if (!empty($tmpPath)) {
             $fileUpload = $this->upload($tmpPath, $i++);
             array_push($data['images'], $fileUpload);
         }
     }
     // Hàm unset() khiến key của array ko còn là dãy số liên tiếp
     // Lúc này Laravel sẽ ko đối xử và lưu 'images' như kiểu array mà là kiểu Json, cần sửa chữa vấn đề này
     $data['images'] = array_values($data['images']);
     $house->fill($data)->save();
     return redirect('m/danh-sach-nha-dat/chinh-chu')->with('flash_message', Lang::get('system.update'));
 }
 /**
  * Save a new House
  *
  * @param HouseRequest $request
  * @return mixed
  */
 protected function createHouse(HouseRequest $request)
 {
     $house = House::create($request->all());
     $this->syncBanks($house, $request->input('bank_list'));
     return $house;
 }