Herança em tabelas separadas  XML
Índice dos Fóruns » Ruby & Ruby on Rails
Autor Mensagem
anderson_lr
JavaBaby
[Avatar]

Membro desde: 08/07/2010 11:05:54
Mensagens: 95
Offline

E aí pessoal,

Estou precisando resolver um problema de herança no com rails, mas não quero utilizar o esquema de herança em uma única tabela. Vocês conhecem algum esquema que nos permite realizar herança em tabelas separadas em rails?
ricardo.valeriano
Thread.start()
[Avatar]

Membro desde: 28/07/2006 15:31:30
Mensagens: 37
Offline

Tudo jóia anderson_lr?

Cara, pode detalhar um pouco mais o seu problema? O que você está precisando fazer em sua aplicação?

http://twitter.com/sr_valeriano
http://backslashes.net
anderson_lr
JavaBaby
[Avatar]

Membro desde: 08/07/2010 11:05:54
Mensagens: 95
Offline

Oi Ricardo,

Posso sim, o problema é o seguinte. Tenho uma tabela funcionário, mas tenho funcionários administrativos e professores. Preciso que professores e administrativos extendam de funcinário. Mas gostaria que cada model tivesse sua tabela separada no banco de dados.
ricardo.valeriano
Thread.start()
[Avatar]

Membro desde: 28/07/2006 15:31:30
Mensagens: 37
Offline

Entendi anderson_lr, que acha do seguinte: o que você realmente precisa é que o "comportamento" de um Funcionario seja aplicável tanto a Professor quanto a FuncionarioAdministrativo, certo?

Existem algumas formas de lidar com isso, vou sugerir duas:

Você poderia usar um módulo que isola o comportamento de Funcionario, e incluir esse módulo em seus ActiveRecord's, algo como o seguinte:



Nesse exemplo, o módulo funcionario acessa a propriedade nome, estou considerando que tanto Professor quanto FuncionarioAdministrativo têm :nome.
Existe uma outra opção que é compor o seus modelos com um objeto do tipo funcionário (que é uma abordagem que acho até mais interessante):



Em qualquer uma das soluções você pode ter uma classe Escola (só para dar exemplo) que usa Professor, FuncionarioAdmininstrativo ou ainda um método que pode receber qualquer um dos tipos:



Será que isso resolve?

http://twitter.com/sr_valeriano
http://backslashes.net
 
Índice dos Fóruns » Ruby & Ruby on Rails
Ir para:   
Powered by JForum 2.1.8 © JForum Team