Edge Rails: Informando outro primary_key em associações

4 de agosto de 2008  |  Rails 2.2  | 

Uma nova opção foi acrescentado ao método has_many: a opção :primary_key.

Fazendo uso desta opção podemos definir qual método do modelo associado retornará a chave primária que será usada na associação. Obviamente o método padrão é o id.

Veja um exemplo de uso:

has_many :clients_using_primary_key, :class_name => 'Client',
  :primary_key => 'name', :foreign_key => 'firm_name'

Atualização

4 de agosto de 2008 às 12:45

Nosso amigo Ozéias Sant’ana (de blog novo) preparou um gem que adiciona esta mesma funcionalidade nas versões anteriores do Rails.

Assim, quem precisa desta funcionalidade para já, deve ler o artigo que ele escreveu explicando como instalar e usar este gem.

has_one

5 de agosto de 2008 às 11:44

O método has_one também recebeu esta implementação, funcionando exatamente como no exemplo acima.



1 Comentário


  1. Fiz uma gem com esta funcionalidade para resolver um problema que tinha com uma tabela de outro sistema.

    http://railsbox.org/2008/8/2/gem-has_many_select

    Pra quem precisar agora.

Trackbacks

  1. Nome do Jogo » Artigo » Rails Podcast Brasil - Episódio 26

Deixe um comentário