Dire che ho Progetto, che è in associazione many-to-many con Tag. Sto usando has_many tramite quindi ho un modello di join separato.Convalida univocità di associazione molti a molti in Rails
Come si crea la convalida, che controlla l'unicità del modello di join? Ora ho solo
has_many :tags, :through => :taggings, :uniq => true
Ma questo non vale per il salvataggio.
Ciao, ma quando aggiungo un tag duplicato a un progetto con 'project.tags << Tag.find_or_create_by_name" Design "' solleva un'eccezione di 'ActiveRecord :: ValidateError', c'è un modo per fallire silenziosamente durante la duplicazione mentre aggiungere il tag senza problemi quando il tag è nuovo? Qual è il modo migliore per gestirlo? Grazie –
Probabilmente c'è un modo più semplice per farlo, ma penso che aggiungerei solo non duplicati: 'design_tags = Tag.find_or_create_by_name" Design " project.tags << design_tags.reject {| tag | project.tags.include? (tag)} ' –