É o lance: estabelecer manualmente as relações no ActiveRecord é chatinho,
mas nada demais. E boa parte da mágica resiste ao esforço. Acho que o único
problema real que se pode enfrentar é no caso da existência de chaves
primárias compostas. Se não for possível criar identificador extra pra esses
casos, você está em maus lençóis.

Dito isso, uso bastante o ActiveRecord fora do Rails pra lidar com vários
bancos antigos daqui sem qualquer problema. Escrever um punhado de
"set_table_name" não mata ninguém.

On 8/31/07, FBN <[EMAIL PROTECTED]> wrote:
>
> hilquiasq escreveu:
> > Renomear um banco grande e em produção não é uma tarefa "trivial", além
> > disso, quando a app cresce os modelos tendem a crescer muito também,
> > abstrair demais é só um sonho, essas coisinhas tipo "magic models" são
> > um adorno e tendem a desaparecer. Enfim, faça o que achar mais
> > confortável :)
>
> Isso é verdade.
>
> Em primeiro lugar gostaria de agradecer a todos que postaram
> seus comentários. Eu não programo em Ruby, pelo menos não ainda,
> mas gostaria de começar. Estava pensando em converter algumas
> aplicações "reais", simples é verdade, mas que seriam um bom
> início. Temos uma equipe de programadores aqui na empresa, e bem
> heterogênea. Existe uma necessidade (ainda que bem incipiente)
> de alguns destes aplicativos serem convertidos para web.
>
> Eu não posso renomear as tabelas do Banco porque estão em produção,
> e em uso por vários aplicativos. Isso não dá mesmo. Uma outra
> maneira que vi foi utilizar views para acessar as tabelas. Estas
> views sim estariam de acordo com o padrão do RoR. É uma alternativa,
> não das mais simpáticas, mas é.
>
> De qualquer forma foi bom saber que existem "saídas". :-)
>
> Muito obrigado a todos
>
> _______________________________________________
> Ruby-l mailing list
> [email protected]
> http://www.listas.unicamp.br/mailman/listinfo/ruby-l
>
_______________________________________________
Ruby-l mailing list
[email protected]
http://www.listas.unicamp.br/mailman/listinfo/ruby-l

Responder a