Я пытаюсь разработать схему для решения электронной почты, чтобы получить доступ к входящим и отправленным сообщениям в объекте User с помощью DataMapper. Ассоциации «Входящие» и «отправленные» не выполняют то, что предназначено. Что я делаю не так? Заранее спасибо!Ассоциация DataMapper
Я следующий до сих пор (после прочтения немного и скопировать пример друзей с сайта DM) -
class User
include DataMapper::Resource
property :id, Serial
property :name, String, :required=>true
property :email, String, :required=>true, :unique=>true
property :password, String, :required=>true
has n, :messages, :child_key=>[:source_id, :target_id]
has n, :inbox, 'Message', :through=>:messages, :via=>:target
has n, :sent, 'Message', :through=>:messages, :via=>:source
end
class Message
include DataMapper::Resource
property :id, Serial
property :subject, String, :required=>true
property :body, String
belongs_to :source, 'User', :key=>true
belongs_to :target, 'User', :key=>true
end