Laravel’de CRUD İşlemleri: Başlangıçtan İleri Seviyeye Rehber

Laravel, modern web uygulamaları geliştirmek için popüler bir PHP framework’üdür. CRUD işlemleri, herhangi bir web uygulamasının temelini oluşturan Create, Read, Update ve Delete işlemlerini ifade eder. Bu makalede, Laravel kullanarak nasıl CRUD işlemleri gerçekleştirileceğini adım adım inceleyeceğiz.
1. Laravel Temel Bilgiler
Laravel kullanmaya başlamadan önce, temel bilgileri anlamak önemlidir. Composer kullanarak Laravel projesi oluşturmak, model-view-controller (MVC) mimarisini anlamak ve Eloquent ORM (Object-Relational Mapping) kullanımı gibi konulara hakim olmalısınız.
2. Veritabanı Modelleme
Laravel’de CRUD işlemleri için ilk adım, veritabanı modellemesidir. Eloquent ORM’i kullanarak veritabanı tablolarını temsil eden modeller oluşturmalısınız. Migration’lar aracılığıyla veritabanı tablolarını oluşturabilir ve Seeder’larla başlangıç verilerinizi ekleyebilirsiniz.
php artisan make:model Product -m
3. Temel Rotaların Tanımlanması
Rotalar, uygulamanızdaki farklı sayfalar arasındaki yönlendirmeleri belirler. routes/web.php
dosyasında temel rota tanımlamalarını yaparak CRUD işlemleri için gerekli yönlendirmeleri belirleyin.
Route::get('/products', 'ProductController@index');
Route::get('/products/create', 'ProductController@create');
Route::post('/products', 'ProductController@store');
Route::get('/products/{id}', 'ProductController@show');
Route::get('/products/{id}/edit', 'ProductController@edit');
Route::put('/products/{id}', 'ProductController@update');
Route::delete('/products/{id}', 'ProductController@destroy');
4. Controller Oluşturma
Controller, iş mantığını içeren ve kullanıcıdan gelen isteklere yanıt veren bir bileşendir. Aşağıda, ProductController
örneği görülmektedir:
php artisan make:controller ProductController
5. CRUD İşlemlerinin Gerçekleştirilmesi
Controller içinde CRUD işlemlerini gerçekleştirmek için modeli kullanabilirsiniz. Örneğin, ProductController
içinde:
public function index()
{
$products = Product::all();
return view('products.index', compact('products'));
}
public function create()
{
return view('products.create');
}
public function store(Request $request)
{
// Veri tabanına yeni ürün ekleyin
}
public function show($id)
{
$product = Product::findOrFail($id);
return view('products.show', compact('product'));
}
public function edit($id)
{
$product = Product::findOrFail($id);
return view('products.edit', compact('product'));
}
public function update(Request $request, $id)
{
// Veri tabanındaki ürünü güncelleyin
}
public function destroy($id)
{
// Veri tabanından ürünü silin
}
6. Form İşlemleri ve Blade Şablonları
CRUD işlemleri genellikle kullanıcıların veri eklemelerine, güncellemelerine ve silmelerine dayanır. Bu nedenle, Blade şablonları ve form işlemleri kullanılarak kullanıcı arayüzü oluşturulmalıdır.
7. Validasyon İşlemleri
Formlardan gelen verileri doğrulamak, güvenliği artırmanın önemli bir parçasıdır. Laravel’in sunduğu validasyon yöntemlerini kullanarak kullanıcı girişlerini kontrol etmeyi unutmayın.
8. Middleware Kullanımı
Laravel’de middleware, isteğin belirli bir aşamada geçip geçmeyeceğini kontrol etmek için kullanılır. CRUD işlemleri sırasında yetkilendirme ve doğrulama gibi konuları ele almak için middleware’leri kullanabilirsiniz.
9. Özellikli Konular
- Dosya Yükleme: Ürün resimleri gibi dosyaların yüklenmesi.
- İlişkisel Veritabanı İşlemleri: Eloquent’in sağladığı ilişkisel veritabanı özelliklerini kullanma.
- API Entegrasyonu: Laravel’in API özelliklerini kullanarak CRUD işlemlerini bir API üzerinden gerçekleştirme.
Bu makalede, Laravel’de CRUD işlemlerini başlangıçtan ileri seviyeye kadar detaylı bir şekilde ele aldık. Uygulama geliştirme sürecinde, belirli ihtiyaçlara ve projenin gereksinimlerine göre işlemleri özelleştirmeyi unutmayın.