In rotaie ho l'amigrazione per modificare i dati di produzione per adattarli alle nuove regole di convalida, Ci sono diverse cose sbagliate quindi ho 2 diverse migrazioni (potrebbero essere uno ma ancora due aspetti che gestita separatamente) uno fallisce perché l'altra convalida non è soddisfatta e viceversaConvalida di bypass durante una migrazione di soli dati per correggere gli errori di convalida
la validazione è stata introdotta nel modello come
validates_uniqueness_of :job_id , :scope => [:day, :time, :user_id , :overtime, :comments] , :message => "Duplicate Entry, Please check your data"
validates_uniqueness_of :job_id , :scope => [:day, :user_id, :comments] , :message => "Has 2 Entires for same job on same day with same comment"
è un tipo che è completamente nuovo e l'altro appena cambiato da 24 a 8 e aggiunto il bit degli straordinari
validates_numericality_of :time, :greater_than => 0, :less_than_or_equal_to => 8
validates_numericality_of :overtime, :greater_than_or_equal_to => 0, :less_than_or_equal_to => 16
Ho provato a riordinare le migrazioni e ho ottenuto il risultato opposto.
c'è un modo diverso dall'aggiornamento del database prima di aggiornare questo file per ignorarlo? o è quello che dovrei fare?
presumo che ci sia comunque per farlo bypassare solo alcune convalide. solo chekcing – loosecannon
funziona per object.save! anche – loosecannon
La differenza nell'usare un hash è importante qui. Il primo non funzionerà in Rails 2. –