iatstuti/laravel-cascade-soft-deletes, Laravel'in Eloquent ORM'sinde soft delete (yumuşak silme) özelliğini kullanan modeller için kademeli silme (cascade delete) işlevi ekler. Normalde ilişkili modeller silindiğinde, soft delete uygulanan modellerde ilişkili kayıtlar otomatik olarak silinmez. Bu paket, belirli bir model silindiğinde ilişkili modellerin de soft delete edilmesini sağlar. Böylece veri bütünlüğü korunur ve ilişkili kayıtların yönetimi kolaylaşır. Paket, Packagist üzerinden 1.184.852 indirme ve 1.173 favoriye sahiptir.
Hangi ihtiyaçlarda değerlendirilebilir?
- Soft delete kullanan ve ilişkili kayıtların da silinmesi gereken Laravel projeleri
- Veri bütünlüğünü koruyarak ilişkisel verileri yönetmek isteyen geliştiriciler
- Eloquent modeller arasındaki ilişkilerde kademeli silme ihtiyacı olan uygulamalar
Yaygın kullanım alanları
Kullanıcı ve İlişkili Veriler
Bir kullanıcı silindiğinde, kullanıcıya ait yorumlar, siparişler veya profiller gibi ilişkili kayıtların da soft delete edilmesi gereken durumlarda kullanılabilir.
Kategori ve Alt Kategoriler
Bir kategori silindiğinde alt kategorilerin ve bu kategorilere bağlı ürünlerin de yumuşak silinmesi istenen senaryolarda faydalıdır.
İçerik Yönetim Sistemleri
Bir blog yazısı silindiğinde yazıya ait etiketler veya yorumlar gibi ilişkili içeriklerin de soft delete edilmesi gereken CMS tabanlı projelerde kullanılabilir.
İncelenmesi gereken noktalar
- Paket yalnızca soft delete kullanan modeller için tasarlanmıştır; normal (hard) delete işlemleri için farklı bir çözüm gerekebilir.
- Kademeli silme işlemi, ilişkili model sayısı ve veri hacmine bağlı olarak performans etkisi yaratabilir; bu nedenle büyük veri setlerinde dikkatli değerlendirilmelidir.
- Paketin güncel sürümü ve Laravel sürümüyle uyumluluğu kontrol edilmelidir; eski sürümlerde beklenmeyen davranışlar olabilir.
WordPress.org
Kurulum ve geliştirme notları
Paketin kurulumu Composer ile yapılır. Resmi dokümantasyonda kurulum adımları belirtilmiştir.
- 1Composer kullanarak paketi projeye ekleyin: composer require iatstuti/laravel-cascade-soft-deletes
- 2Kullanmak istediğiniz modelde trait'i kullanın ve cascadeSoftDeletes özelliğini tanımlayın.
Geliştirme aşamasında, modelde ilgili trait kullanılır ve silinecek ilişkiler belirtilir. Paket, ilişkili modellerin soft delete edilmesini otomatik olarak yönetir.
- Modelde CascadeSoftDeletes trait'i kullanılır.
- cascadeSoftDeletes özelliği ile silinecek ilişkiler tanımlanır.
- İlişkili modellerin soft delete edilmesi otomatik olarak gerçekleşir.
Hazır çözümün ötesinde
Özel geliştirme ne zaman değerlendirilebilir?
ZeplinGo olarak, Laravel projelerinizde bu paketin kullanımını inceleyebilir, ihtiyaçlarınıza göre özel çözümler tasarlayabilir ve kademeli silme işlemlerini projenize entegre edebiliriz. Kurumsal web sitenizde bu tür bir ihtiyaç varsa, birlikte kapsam belirleyerek geliştirme sürecini planlayabiliriz.
Ücretsiz ön çalışma isteyin →Değerlendirme soruları
Bu paket hangi Laravel sürümleriyle uyumludur?
Paketin resmi açıklamasında Laravel sürüm uyumluluğu belirtilmemiştir. Güncel sürümün ve bağımlılıkların kontrol edilmesi önerilir.
Paket sadece soft delete mi yoksa hard delete de yapıyor mu?
Paket, yalnızca soft delete kullanan modeller için kademeli silme sağlar. Hard delete işlemleri için farklı bir çözüm gerekebilir.
Kademeli silme işlemi performansı etkiler mi?
İlişkili model sayısı ve veri hacmine bağlı olarak performans etkisi olabilir. Büyük veri setlerinde dikkatli değerlendirme yapılmalıdır.