Rails: has_many, mas também has_one com um nome diferente
Digamos umUser
tem muitosDocument
s e um únicoDocument
eles estão trabalhando no momento. Como eu represento isso nos trilhos?
eu quero dizercurrent_user.current_document = Document.first
(com ou sem current_ na frente do documento) e não altere ocurrent_user.documents
coleção.
Isto é o que eu tenho:
class Document < ActiveRecord::Base
belongs_to :user
end
class User < ActiveRecord::Base
has_many :documents
has_one :document
end
o problema é que quando eu digocurrent_user.document = some_document
, remove o documento armazenado anteriormente emcurrent_user.document
decurrent_user.documents
. Isso faz sentido devido aohas_one
relacionamento queDocument
tem, mas não é o que eu quero. Como faço para corrigir isso?