Laravel 11’de Depolama Klasöründen Resim Gösterme Örneği
Laravel’de depolama klasöründen resim göstermek, web uygulamaları için temel bir işlevdir. Laravel, depolama için **Storage** faktörü sağlar ve dosyaları düzenli bir şekilde yönetmenize yardımcı olur. Bu makalede, Laravel 11’de depolama klasöründen resim göstermek için adım adım bir kılavuz sunacağım.
1. Depolama Klasörünü Kurma
Öncelikle, depolama klasörünü kurmanız gerekir. Laravel, varsayılan olarak üç depolama diski sağlar: **Local**, **Public** ve **S3**. Bu makalede, yerel disk kullanacağız.
Depolama yapılandırma dosyasına aşağıdaki satırı ekleyerek yerel diski etkinleştirin:
“`php
‘default’ => env(‘FILESYSTEM_DISK’, ‘local’),
“`
Depolama dizinini **storage/app** klasöründe bulabilirsiniz. Resimlerinizi bu klasöre kaydedebilirsiniz.
2. Resim Yükleme
Resim yüklemek için, **Request** nesnesini kullanarak dosyayı alabilirsiniz ve daha sonra **Storage** faktörünü kullanarak dosyayı depolama klasörüne kaydedebilirsiniz.
“`php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;
public function store(Request $request)
{
$request->validate([
‘image’ => ‘required|image|mimes:jpeg,png,jpg,gif|max:2048’, // Maksimum dosya boyutu 2 MB
]);
$imageName = time() . ‘.’ . $request->image->extension();
$request->image->storeAs(‘public/images’, $imageName);
// Veritabanına kaydetmek için dosya adını kullanın
$product = new Product();
$product->image = $imageName;
$product->save();
return redirect()->back()->with(‘success’, ‘Resim başarıyla yüklendi!’);
}
“`
Bu kodda, öncelikle **image** alanı için bir doğrulama yapıyoruz. Ardından, **time()** fonksiyonunu kullanarak dosyaya benzersiz bir ad veriyoruz. **storeAs()** metodu, dosyayı **public/images** alt dizinine kaydediyor.
3. Resim Gösterme
Resmi göstermek için, **Storage** faktörünü kullanarak dosyanın URL’sini alabilirsiniz:
“`html
Laravel Dosya Sistemi Dokümantasyonu
Örnek Uygulama
Bu makalede verilen örnekleri içeren bir uygulama oluşturmak için, aşağıdaki adımları izleyebilirsiniz:
- Yeni bir Laravel projesi oluşturun.
- Bu makalede verilen kod parçacıklarını uygulamanıza ekleyin.
- Bir form oluşturun ve kullanıcılardan resim yüklemelerini isteyin.
- Resmi yüklemek ve depolama klasöründen göstermek için bir denetleyici oluşturun.
- Bir görünüm oluşturun ve yüklü resmi görüntülemek için **Storage::url()** metodunu kullanın.
Bu adımları izleyerek, kendi Laravel uygulamanızda resim işleme özelliklerini kolayca uygulayabilirsiniz.
Umarım bu makale, Laravel 11’de depolama klasöründen resim gösterme konusunda size yardımcı olmuştur. Daha fazla bilgi için, **Fatih Soysal** sitesini ziyaret edebilirsiniz.
#Etiketler
Laravel, Laravel 11, Depolama Klasörü, Resim Gösterme, Resim Yükleme, Dosya Yönetimi, Storage, Image, URL, Intervention Image