[Ror-es] Saludos y preguntas.
Xavier Noria
fxn at hashref.com
Tue Aug 1 09:16:27 GMT 2006
On Aug 1, 2006, at 11:03 AM, Jorge Calás Lozano wrote:
> Hola, soy nuevo en RoR y en el foro, he estado haciendo algunas
> cosillas sencillas de las que vienen en los tutoriales y ahora
> quiero ver si me meto a hacer una cosa seria para un proyecto del
> trabajo. El asunto es que tengo una base de datos antigua en SQL
> server, con la que trabaja una aplicación en VS6.0 y necesito hacer
> una interface web solo para algunas funciones, por lo que hacer
> cambios en la DB no me es posible. El problema me viene cuando:
>
> Los nombres de las tablas no cumplen el estandar para RoR
> (Empleados, Facturas, etc al menos no en todos los casos)
Para cada clase modelo puedes usar set_table_name para indicar
explicitamente el nombre de la tabla a la que corresponde un modelo:
class LegacyModel < ActiveRecord::Base
set_table_name 'TBL_EMPLEADOS'
end
Si por casualidad tuvieras el convenio de Rails excepto un prefijo o
sufijo puedes poner esto en environment.rb
ActiveRecord::Base.table_name_prefix = 'TBL_'
y hay tambien un suffix. De eso modo tu modelo se puede llamar
Empleado en vez de TblEmpleado.
> Los campos de Id tampoco cumplen el estardar RoR
Para eso esta set_primary_key y tambien hay atajos por si el convenio
es nombre_de_tabla_id:
ActiveRecord::Base.primary_key_prefix_type
= :table_name_with_underscore
o directamente el nombre de la tabla
ActiveRecord::Base.primary_key_prefix_type = :table_name
Por ejemplo, el primero funciona si la tabla TBL_EMPLEADO tiene
primary key tbl_empleado_id. Con esa configuracion no hace falta usar
set_primary_key mas que en las excepciones, estamos cmabiando las
reglas de AR globalmente.
> Tengo caracteres extraños que me causan errores en los scaffold con
> los que he podido trabajar.
Para eso es posible que necesites ajustar el caracter encoding de la
base de datos y el Content-Type de la respuesta HTTP. Este tema ha
salido alguna vez en la lista, si buscas "Content-Type" en los
archivos te saldran mensajes que pueden ayudar.
> Quisiera saber si hay alguna documentación sobre como manejar estas
> cosas. O si alguien me puede ir dando un "norte" para saber como
> guiarme.
La referencia ahi es la documentacion de ActiveRecord::Base en http://
api.rubyonrails.com. El libro Rails Recipes (disponible en PDF) trata
ese tema en una receta..
> Otro tema que tengo es que necesito hacer que las páginas sean
> accesibles solo a los usuarios que tienen los permisos, por lo que
> necesitaré autorización y autenticación (viceversa), alguna pista
> sobre esto?
Delega en un plugin como acts_as_authenticated y usa filtros en los
controladores para implementar eso DRYmente.
-- fxn
More information about the Ror-es
mailing list