Пример #1
0
 public function store(Request $request, $user_as_merchant_model)
 {
     //http://stackoverflow.com/questions/28594076/seed-multiple-rows-at-once-laravel-5
     $Dir_id = Director::orderBy('id', 'desc')->take(1)->get();
     foreach ($Dir_id as $DI) {
         $Did = $DI->id;
     }
     if (!isset($Did)) {
         $Did = 0;
     }
     $Did = $Did + 1;
     $length = count($request->get('directors'));
     //
     $directors = $this->collectDirectorFormData($request, $user_as_merchant_model);
     // every key has an arr except merchant_id
     $director = new Director();
     $directorsRecords[] = null;
     $director_model[] = null;
     //lets create a record
     $files = $request->file('directorImages');
     for ($i = 0; $i < $length; $i++) {
         $files_name = $files[$i]->getClientOriginalName();
         $destination = 'public/images/director/' . $Did . '/';
         if ($files[$i]->move($destination, $files_name)) {
             $record = ['name' => $directors['name'][$i], 'nric' => $directors['nric'][$i], 'country_id' => $directors['country_id'][$i], 'photo_1' => $destination . $files_name, 'merchant_id' => $directors['merchant_id']];
             $directorsRecords[] = $record;
             // dd($record);// ["name" => "ds"      ,      "nric" => "23123", "country_id" => "13",  "merchant_id" => 2]
         }
         $Did = $Did + 1;
     }
     unset($directorsRecords[0]);
     // as first record is null  => $directorsRecords[] = null;  so remove it to prevent an extra entry in db
     foreach ($directorsRecords as $directorSingleRecord) {
         $director_model[] = $director->create($directorSingleRecord);
     }
     unset($director_model[0]);
     // as first modal is null  =>  $director_model[] = null;  so remove it to prevent an ambiguity for user(developer)
     return $director_model;
 }