ruby-on-rails the - Ruby on Rails:come convalidare un modello senza Active Record?




installare it (3)

In Rails 3, Active Model contiene la funzionalità non di database di Active Record.

Fondamentalmente, è necessario includere ActiveModel::Validations , definire i campi come attr_accessor , utilizzare un metodo di inizializzazione per inizializzare gli attributi e renderli non persistenti poiché il modello non è persistente in un database.

In questo modo è possibile avere le convalide sul modello senza tableless e sul controller come se si stesse utilizzando Active Record. C'è anche un Railscast su questo http://railscasts.com/episodes/219-active-model .

Attualmente sto provando a convalidare i campi senza avere un'eredità ActiveRecord::Base .

Il mio modello memorizza i dati su un server cache, quindi non ho bisogno di ActiveRecord.

Ad ogni modo, vorrei convalidare i campi del modello come farei se validates_numericality_of :quantity, :greater_than => 0 ActiveRecord (ad es validates_numericality_of :quantity, :greater_than => 0 )?

Come lo posso fare?

Grazie mille per il tuo aiuto.


Controlla la nostra gemma Veto invece se stai cercando una validazione standalone per gli oggetti rubino. È leggero e non ha dipendenze. ActiveModel potrebbe essere eccessivo.


Qualcuno ha mai provato ad includere ActiveRecord::Validations e ActiveRecord::Validations::ClassMethods in una classe Record non attiva e vedere cosa succede quando si tenta di impostare i validatori?

Sono sicuro che ci sono molte dipendenze tra il framework di validazione e ActiveRecord stesso. Ma si può riuscire a sbarazzarsi di tali dipendenze mediante la forgiatura del proprio framework di convalida dal framework di convalida AR.

Solo un'idea

Aggiornamento : oopps, questo è più o meno ciò che è suggerito nel post collegato con la tua domanda. Scusa per il disturbo.





ruby-on-rails validation activerecord model