J'ai un modèle simple avec un filtre after_create qui crée des enregistrements d'association.Ignorer la création de version de paper_trail lors de la création d'enregistrements enfants
class Subject
after_create :create_topics!
has_paper_trail :on => [:create, :update],
:ignore => [:topics]
private
def create_topics!
self.account.default_topics_for_subject_type(self.subject_type).each do |topic|
self.topics.create!({:name => topic.name})
end
end
end
Cependant, la création d'un Subject
maintenant qui va créer deux par exemple sujets résultats en deux versions pour le même sujet, un create
avant et un après update
les sujets ont changé.
Des idées pour résoudre ce problème?
mise à jour
Le modèle de sujet n'est pas une sous-classe de sujet, mais qui lui appartient. Ils ont aussi un paper_trail et doivent être versionnés dès le début du processus de création par sujet.
class Topic
belongs_to :subject
end
est sujet une sous-classe de sujet? Si tel est le cas, Topic héritera du rappel et sera déclenché par self.topics.create – RadBrad
Le sujet est un modèle distinct et non une sous-classe. – pduersteler
Question mise à jour, se sentir comme si je n'avais pas tout fourni. – pduersteler