Laravel, неспособный copyDirectory или moveDirectory

В настоящее время у меня проблема с Laravel не может использовать moveDirectory и copyDirectory, однако makeDirectory или deleteDirectory работает нормально, код выглядит следующим образом:

<?php namespace App\Http\Controllers\Backend; use App\Http\Controllers\Controller; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Storage; use App\Http\Requests; use App\Property; use Intervention; class PropertyController extends Controller { public function update(Request $request, $id) { $property = Property::findOrFail($id); $oldName = $property->name; $property->fill($request->all()); if ($request->name == '') { $property->name = str_slug($request->title); } $property->updated_by = Auth::user()->username; if ($oldName !== $property->name) { Storage::disk('public')->moveDirectory('images/'.$oldName, 'images/'.$property->name); } $property->save(); show_feedback('info', 'Property successfully updated'); return redirect(route('property-management.index')); } } 

с ошибкой:

 BadMethodCallException in PluggableTrait.php line 85: Call to undefined method League\Flysystem\Filesystem::moveDirectory 

Related of "Laravel, неспособный copyDirectory или moveDirectory"

Я думаю, что moveDirectory недоступен в разделе Storage . Попробуйте использовать код ниже

сначала импортировать файловую систему

 use Illuminate\Filesystem\Filesystem; 

после этого создайте новый экземпляр и переместите каталог. Я думаю, что путь относительно index.php.

 $file = new Filesystem(); $file->moveDirectory('../storage/app/public/old_folder', '../storage/app/public/new_folder'); 

отредактированный

Вы можете обойти создание экземпляра с помощью метода инъекции

 public function update(Request $request,Filesystem $file, $id) 

Используйте метод File::copyDirectory() .

$ success = Файл :: copyDirectory ($ sourceDir, $ destinationDir);

Метод вернет true, если все файлы и подкаталоги успешно скопированы.

Если целевой каталог не существует, он будет создан. Он будет создан рекурсивно по мере необходимости.