2010-06-18 18 views
12

Ho un metodo di validazione personalizzata che voglio solo eseguito su creare:convalida personalizzato: on =>: Crea non funziona

validate :post_count, :on => :create 

def post_count 
    # validate stuff 
end 

Tuttavia, è essere stato licenziato aggiornata (in aggiunta a creare on).

L'opzione :on => :create non funziona con metodi di convalida personalizzati?

+0

È possibile aggiornare il titolo e il tag per chiarire la versione di Rails che si sta utilizzando? – lulalala

risposta

9

Per quanto ne so, non esiste l'opzione :on. Utilizzare

validate_on_create :post_count 

invece. E c'è anche validate_on_update. È possibile leggere su questo metodo here.

+0

È strano, ero sicuro: esisteva ... hmmm – thomasfedb

+18

Esiste, validate_on_create è in realtà deprecato, AVVISO DI DEPRESSIONE validate_on_create è deprecato. Utilizzare validate (args,: on =>: create) – Gunner

+0

j. risponde ancora una volta! Grazie! – Trip

7

Questo può essere un problema di Rails 2.x vs Rails 3, ma secondo il Rails Guides on Validation l'opzione :on è sicuramente valida (anche se sto lottando con il motivo per cui non è sparando per me in un modo simile).