2016-06-03 14 views
0

Ich möchte ActiveModel::Validations in einer kleinen Roda-App verwenden, und ich möchte es wirklich klein halten und ich möchte vermeiden, die Gesamtheit von ActiveModel darin zu laden. Gibt es eine Möglichkeit, nur ActiveModel::Validations zu verlangen?Wie wird nur ActiveModel-Validierungen geladen?

Mindestens mit activemodel-4.2.6. ein Versuch, require 'active_model/validations' Ergebnisse mit

/home/bbozo/.rvm/gems/ruby-2.2.4/gems/activemodel-4.2.6/lib/active_model/validations/format.rb:4:in `<module:Validations>': uninitialized constant ActiveModel::Validations::EachValidator (NameError) 
     from /home/bbozo/.rvm/gems/ruby-2.2.4/gems/activemodel-4.2.6/lib/active_model/validations/format.rb:3:in `<module:ActiveModel>' 
     from /home/bbozo/.rvm/gems/ruby-2.2.4/gems/activemodel-4.2.6/lib/active_model/validations/format.rb:1:in `<top (required)>' 
     from /home/bbozo/.rvm/gems/ruby-2.2.4/gems/activemodel-4.2.6/lib/active_model/validations.rb:405:in `require' 
     from /home/bbozo/.rvm/gems/ruby-2.2.4/gems/activemodel-4.2.6/lib/active_model/validations.rb:405:in `block in <top (required)>' 
     from /home/bbozo/.rvm/gems/ruby-2.2.4/gems/activemodel-4.2.6/lib/active_model/validations.rb:405:in `each' 
     from /home/bbozo/.rvm/gems/ruby-2.2.4/gems/activemodel-4.2.6/lib/active_model/validations.rb:405:in `<top (required)>' 

Hmff, OK, schreibe diese Frage fand ich die Lösung^_^

Antwort

0

ich es geschafft laden "nur" ActiveModel Validierungen und es ist Abhängigkeiten, landete ich

require 'active_model/validator' 
require 'active_model/validations' 
require 'active_model/naming' 
require 'active_model/callbacks' 
require 'active_support/callbacks' 
require 'active_model/translation 

gerade diesen Pass zu machen erfordert bis:

class Foo 
    include ActiveModel::Validations 
end 

so scheint es, ich werde das gesamte aktive Modell erfordern oder einen alternativen Validierungsrahmen finden.