У меня есть связь между проектом и таблицей файлов, как показано ниже:
class Project extends Model
{
public function files()
{
return $this->hasMany(File::class);
}
}
class File extends Model
{
public function project()
{
return $this->belongsTo(Project::class);
}
}
Я хочу обновить в таблице файлов, где внешний идентификатор проекта такой же, и я могу обновить одну или несколько строк вместе. Но только первый файл обновляется, когда используется first (), например, следующий код:
$files = $request->filenames;
if($files) {
foreach ($files as $u_file) {
$name=$u_file->getClientOriginalName();
$u_file->move(public_path().'/images/', $name);
$project_file =File::where('project_id', $id)->first();
$project_file->filename = $name;
$project->files()->save($project_file);
}
}
с использованием get () вместо first (), получая ошибку, как показано ниже:
SplFileInfo ::getSize (): сбой статистики для C: \ xampp \ tmp \ php28ED.tmp