Bir örnek olarak bu davayı ele alalım:Etkin kayıttaki polimorfik ilişkileri silmek için nasıl basamak uygularım?
class Child < ActiveRecord::Base
belongs_to :fruitful, polymorphic: true
end
class Parent < ActiveRecord::Base
has_many :children, as: :fruitful, dependent: :destroy
end
# Once I create the parent and children
p = Parent.create
p.children << Child.new
p.children << Child.new
p.save
# But deleting parent does not delete children:
p.destroy # why not?
soru olur ise "bağımlı: yok" aktif kaydın polimorfik derneği ile desteklenen ve ben yetim kayıtları önlemek için before_destroy geri arama uygulaması gerekir mi değil?
İlk olarak, cevapladığınız için teşekkürler. İkincisi, bu durum benim gerçek durumumun polimorfik ilişkiyi kullanarak "çocuklarla" doldurulmuş gerçek bir model olduğu ve yok etme yönteminin denetleyicinin "yok etme" eylemi içinde çağrıldığı basitleştirilmiş bir örnekti. Polimorfik olanlar korunurken, tüm POLONFİK olmayan ilişkilerin DB'den silinmiş olduğunu görüyorum. Bu tür derneklerde "bağımlı:: yok et" seçeneğini "DEĞİŞTİRMEYİN" etiketlerini taşıdığını fark ettim ... – Vlad
Hah! Görünüşe göre aslında bağımlı olarak eklemeyi unuttum:: kodumu yok et! – Vlad