Как настроить несколько отношений типа has n, :through => Resource
между одними и теми же моделями с помощью DataMapper?
Например, в новостной CMS у меня было бы что-то вроде этого:
class User
include DataMapper::Resource
has n, :written_articles, 'Article', :through => Resource
has n, :edited_articles, 'Article', :through => Resource
property :name, String # etc.
end
class Article
include DataMapper::Resource
has n, :authors, 'User', :through => Resource
has n, :editors, 'User', :through => Resource
property :title, String # etc.
end
Однако это не работает. В базе данных есть только одна таблица отношений, в которой для каждого отношения должны быть указаны и автор, и редактор, что даже не имеет смысла.
Как я могу сделать что-то подобное?