ruby-on-rails-3 activerecord ruby-1.9

ruby on rails 3 - Método no definido ''on'' para ActionModel



ruby-on-rails-3 activerecord (2)

Si está utilizando Rails 3, entonces el problema es que ya no hay un método "encendido" para la clase Errors. Creo que se supone que debes usar "obtener" ahora. Asi que:

error = case errors = model.errors.get(field)

O...

error = case errors = model.errors[field]

Me aparece el siguiente error:

NoMethodError in Users#new Showing .../app/views/users/form/_new.haml where line #7 raised: undefined method `on'' for #<ActiveModel::Errors:0x007fb599ec6610>

El código en la línea 7 es:

7: = errors_for user, :first_name

Y el application_helper.rb:

def errors_for(model, field) error = case errors = model.errors.on(field) ... end

''on'' es un método predeterminado en ActiveRecord . ¿Por qué esto no funciona?


Verifiqué a mi usuario y u.errors es un ActiveRecord::Errors , mientras que veo que tienes un ActiveModel::Error , trabajaría en eso.

Entonces no entiendo los case errors = declaración en su ayudante, tengo curiosidad por saber cómo implementó esa parte ...