Model Kategori ve Ürünlerim var. category.products << new_product
kullanırsam, öğe diziye eklenir ve kayıt veritabanına kaydedilir. Dizi sınıfına aşağıdaki "ekleme" yöntemini eklemeyi denedim ve yeni_product diziye eklerken veritabanına kaydetmiyor. Neden?ActiveRecord dizisine Add yöntemi ekleme
class Array
def add(item)
self << item
end
end
Güncelleme:
collection_proxy.rb aşağıdaki yöntem etti:
def <<(*records)
proxy_association.concat(records) && self
end
alias_method :push, :<<
Yani şu uzantısı çalışır:
class ActiveRecord::Relation
def add(*records)
proxy_association.concat(records) && self
end
end
Çözüm: CollectionProxy için bir takma ad ekleyin:
class ActiveRecord::Associations::CollectionProxy
alias_method :add, :<<
end
Raylar dernekler diziler olmadığından, onlar sadece onlar iddia: Aşağıdaki örnek vardı
modeliniz adlarını yeni raylar projeyi yangın yerine, ben sadece kullanılan bir . –
Onlar ne? Bir "Add" yöntemini nasıl ekleyebilirim? – Manuel