Enregistrer l'image dans le dossier public à la place du stockage laravel 5

Je veux save mon avatar dans le dossier "Public" et le récupérer.

D'accord. Je peux l'save mais dans le dossier "stockage / application" au lieu de "public"

mon ami m'a dit d'aller à "config / filesystem.php" et de l'éditer, alors je l'ai fait comme ça

'disks' => [ 'public' => [ 'driver' => 'local', 'root' => storage_path('image'), 'url' => env('APP_URL').'/public', 'visibility' => 'public', ], 

toujours pas de changement.

ici mes codes simples

Route:

 Route::get('pic',function (){ return view('pic.pic'); }); Route::post('saved','test2Controller@save'); 

Manette

 public function save(Request $request) { $file = $request->file('image'); //save format $format = $request->image->extension(); //save full adress of image $patch = $request->image->store('images'); $name = $file->getClientOriginalName(); //save on table DB::table('pictbl')->insert([ 'orginal_name'=>$name, 'format'=>$base, 'patch'=>$patch ]); return response() ->view('pic.pic',compact("patch")); } 

Vue:

 {!! Form::open(['url'=>'saved','method'=>'post','files'=>true]) !!} {!! Form::file('image') !!} {!! Form::submit('save') !!} {!! Form::close() !!} <img src="storage/app/{{$patch}}"> 

Comment puis-je sauvegarder mon image (et le file à l'avenir) dans le dossier public plutôt que dans le stockage?

Dans config / filesystems.php, vous pouvez le faire … changer l'élément racine en public

 'disks' => [ 'public' => [ 'driver' => 'local', 'root' => public_path() . '/uploads', 'url' => env('APP_URL').'/public', 'visibility' => 'public', ] ] 

et vous pouvez y accéder en

 Storage::disk('public')->put('filename', $file_content); 

Vous devrez lier votre directory de stockage à votre dossier public avec:

 php artisan storage:link 

Une fois que vous avez fait cela, pour l'afficher dans la vue que vous pouvez faire:

 {{ asset('storage/file.txt') }} 

Ou dans votre cas:

 <img src="{{ asset('storage/app/' . $patch) }}">