Я попытался импортировать файл Excel в одну таблицу, и он отлично работал, но проблема в том, что модуль Census позволяет пользователю добавлять нового резидента вместе с необходимой информацией, теперь каждый раз, когда пользователь добавляет новый резидент, он также отражается в пользовательской таблице посредством использования внешнего ключа user_no в таблице резидентов. Я хочу достичь этого при импорте файла Excel. это возможно? (простите меня, я все еще новичок с Laravel)
вот мой код для добавления резидента:
public function store(Request $request)
{
$residents = new Resident;
$residents->resident_fname = $request->input('resident_fname');
$residents->resident_lname = $request->input('resident_lname');
$residents->resident_mi = $request->input('resident_mi');
$residents->resident_email = $request->input('resident_email');
$residents->resident_age = $request->input('resident_age');
$residents->resident_dob = $request->input('resident_dob');
$residents->role = 'resident';
$residents->resident_address = $request->input('resident_address');
$residents->resident_contact = $request->input('resident_contact');
$residents->resident_gender = $request->input('resident_gender');
$residents->ResidentVoter_status = $request->input('ResidentVoter_status');
$residents->resident_status = $request->input('resident_status');
$residents->resident_religion = $request->input('resident_religion');
$residents->resident_purok = $request->input('resident_purok');
$residents->save();
$res_id = Resident::orderBy('created_at', 'desc')->first();
$user = new User;
$user->name = $request->input('resident_fname');
$user->email = $request->input('resident_email');
$user->password = Hash::make('123456');
$user->role = 'resident';
$user->res_id = $res_id->id;
$user->save();
return redirect('/residents')->with('success', 'Successfully Added!');
}
Вот мой код для модели ResidentImport:
public function model(array $row)
{
return new Resident([
'resident_fname' => $row[0],
'resident_lname' => $row[1],
'resident_mi' => $row[2],
'resident_dob' => \PhpOffice\PhpSpreadsheet\Shared\Date::excelToDateTimeObject($row['3']),
'role' => $row[4],
'resident_age' => $row[5],
'resident_address' => $row[6],
'resident_contact' => $row[7],
'resident_email' => $row[8],
'resident_purok' => $row[9],
'resident_status' => $row[10],
'resident_gender' => $row[11],
'resident_religion' => $row[12],
'ResidentVoter_status' => $row[13],
]);
}
пока это мой ResidentImport Controller:
public function import(Request $request)
{
$import = Excel::import(new ResidentImport, request()->file('import_file'));
return redirect('/importing')->with('success', 'Imported Successfully!');
}
Я абсолютно не представляю, что с этим делать. кто-нибудь может мне помочь, пожалуйста?