Merhaba.
Observer kullanarak silinen kayıtların bir kaydını tutuyorum. Ayrıca bir biri ile ilişkili diğer kayıtlarında soft delete durumuna geçmesini sağlıyorum.
Şöyle ki;
Bir müşteri kaydı tamamen silindiğinde ona ait bilgiler soft delete olarak siliniyor. Fakat ilişkili olduğu alanlar da soft delete durumu yok.
CustomerObserver.php
public function deleting(Customer $customer){
$customer->transaction()->delete(); //transaction alanları soft delete oluyor.
}
Transaction a ait muhasebe detaylarını silmeye gelince bu işe yaramıyor.
Hatta burada hiç bir şekilde etkileşim olmuyor. Bunun sebebi doğrudan model üzerinden kullanmamam olabilir mi?
TransactionObserver
public function deleting(Transaction $transaction)
{
$transaction->account()->delete();
}
Burada ki bağlantı tam olarak nedir. Customer modeli üzerinden transaction ı soft delete yapıyor ama tanımlı olduğu Observer'a neden etkileşim vermiyor anlayamadım.
AppServiceProvider.php
public function boot()
{
Customer::observe(CustomerObserver::class);
Transaction::observe(TransactionObserver::class);
Accounting::observe(AccountingObserver::class);
}