Bah, esse me surgiu esses tempos, e resolvi fazer alguns testes, eu armazeno um objeto em uma sessão com o rails, mas eu não tinha intenção de armazenar essa bagaça na base, somente em memória. sem ideias fui eu pela internet buscar como fazer isso. O Rails 3 modularizou boa parte do rails, um refactoring grande, mas que facilitou muita coisa, como o teste abaixo, por exemplo:
- class Person
- attr_accessor :name, :age
- end
Ta tio, e se quiser usar as validações e outras coisas do rails? vou ter que fazer tudo no braço? Bom é claro que não né, que puta perca de tempo isso. Veja a adaptação abaixo:
- class Person
- include ActiveModel::Validations
- include ActiveModel::Conversion
- extend ActiveModel::Naming
- attr_accessor :name, :age
- validates :name, :age, :presence => true
- def initialize(attributes = {})
- attributes.each do |name, value|
- send("#{name}=", value)
- end
- end
- def persisted?
- false
- end
- end
vejam só que maravilha, agora vc pode fazer coisas como essas (irb):
- p = Person.new
- => #<person:0x7f4516778848>
- p.valid?
- => false
- p.errors
- => #<orderedhash {:age="">["translation missing: br, activemodel, errors, models, person, attributes, age, blank"], :name=>["translation missing: br, activemodel, errors, models, person, attributes, name, blank"]}>
- </orderedhash></person:0x7f4516778848>
Ooops, falta as traduções, mas isso é dever de casa né ashudahushud.
0 comentários:
Postar um comentário