alias o seleccione AS para datos heredados en la aplicación rails

Tengo una aplicación de rieles que se conecta a una base de datos heredada.

cuando consulto la base de datos, devuelve cosas como 'ID de usuario', en lugar de 'id' y 'nombre de usuario' en lugar de 'nombre'.

Pensé que sería bastante simple escribir en mis controladores

: select => 'userID AS id, userName AS nombre'

pero cuando hago eso, los campos que intento cambiar de nombre no se devuelven. Se devuelven otros campos en los que no estoy creando un alias.

¿Existe una forma mejor de hacer esto? ¿Quizás poner un alias en los nombres de los campos en los modelos?

preguntado el 16 de mayo de 11 a las 17:05

1 Respuestas

¿Por qué no define los cambios en su modelo?

class User < ActiveRecord::Base
  set_primary_key "userID"
  #Use alias_attribute to define your columns to ActiveRecord standards.
  alias_attribute "name", "userName"
end

O puede usar la ruta recomendada y crear una vista para su base de datos en el servidor.

Para más información, ver: http://www.slideshare.net/napcs/rails-and-legacy-databases-railsconf-2009

contestado el 16 de mayo de 11 a las 22:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.