В Laravel у меня есть простая функция, которая сохраняет список вакансий в моей базе данных.
Изначально это выглядело так:
/**
* Store a new instance of a job posting in the database
*
* @param Request $request
* @return void
*/
public function store(StoreJobPost $request)
{
$job = new JobPost();
$job->position = $request->get('position');
$job->description = $request->get('description');
$job->location = $request->get('location');
$job->business_area = $request->get('business_area');
$job->contract_type = $request->get('contract_type');
$job->hours = $request->get('hours');
$job->salary = $request->get('salary');
$job->salary_period = $request->get('salary_period');
$job->attached_description = $request->get('attached_description');
$job->scheme = $request->get('scheme');
$job->contact_name = $request->get('contact_name');
$job->contact_email = $request->get('contact_email');
$job->contact_number = $request->get('contact_number');
$job->status = $request->get('status');
$job->expires_on = $request->get('expires_on');
$job->save();
return redirect()->route('vacancies.index')->with('success', 'Job listing created successfully');
}
Я сократил это, чтобы выглядеть так:
/**
* Store a new instance of a job posting in the database
*
* @param Request $request
* @return void
*/
public function store(StoreJobPost $request)
{
$validFormData = $request->validated();
$job = JobPost::create($validFormData);
return redirect()->route('vacancies.index')->with('success', 'Job listing created successfully');
}
Однако я хочу также сохранить файл. Ранее я сделал что-то вроде этого:
$file = $request->file('file');
$path = $file->storeAs('library/', $file->getClientOriginalName());
В какой момент у меня было:
$object->path = $path;
$object->save();
В текущем сценарии возможно ли получить файл обратно из $validatedFormData
, чтобы я мог сохранить путь к загрузке в базе данных с остальной частью объекта?