Nel mio progetto lo sconto è e appartiene a molte aziende. Ho una regola di callback associazione che uno sconto non può rimuovere il suo ultimo businss (sostenere che c'è sempre un businss per ogni sconto):Come saltare la richiamata di associazione in destroy
has_and_belongs_to_many :businesses,
before_remove: :check_count,
def check_count
raise 'Cannot remove latest business!' if businesses.count == 1
end
però mi sono reso conto che non sarò in grado di rimuovere sconti . Da quando faccio lo discount.destroy
, penso che proverà a rimuovere le aziende, e in termini di errore aumenterà l'errore.
Quindi c'è un modo per aggirare questo, come una sorta di :except
come nei controller?
Controlla qui: http://guides.rubyonrails.org/active_record_validations_callbacks.html#skipping-callbacks –