MongoMapper Родительское Наследование

Я пытаюсь получить лучший и организованный результат от использования наследования классов с MongoMapper, но у меня возникли некоторые проблемы.

class Item
  include MongoMapper::Document

  key :name, String
end

class Picture < Item
  key :url, String
end

class Video < Item
  key :length, Integer
end

Когда я запускаю следующие команды, они не совсем возвращают то, что я ожидаю.

>> Item.all
=> [#<Item name: "Testing", created_at: Sun, 03 Jan 2010 20:02:48 PST -08:00, updated_at: Mon, 04 Jan 2010 13:01:31 PST -08:00, _id: 4b416868010e2a04d0000002, views: 0, user_id: 4b416844010e2a04d0000001, description: "lorem?">]
>> Video.all
=> [#<Video name: "Testing", created_at: Sun, 03 Jan 2010 20:02:48 PST -08:00, updated_at: Mon, 04 Jan 2010 13:01:31 PST -08:00, _id: 4b416868010e2a04d0000002, views: 0, user_id: 4b416844010e2a04d0000001, description: "lorem?">]
>> Picture.all
=> [#<Picture name: "Testing", created_at: Sun, 03 Jan 2010 20:02:48 PST -08:00, updated_at: Mon, 04 Jan 2010 13:01:31 PST -08:00, _id: 4b416868010e2a04d0000002, views: 0, user_id: 4b416844010e2a04d0000001, description: "lorem?">]

У них все одинаковый результат, я бы ожидал иметьItem.all перечислить все результаты, в том числе и себя,Picture, а такжеVideo, Но если предмет на самом делеPictureЯ хотел бы вернуть его, если я побежалPicture.all и нет, если я бегуVideo.all, Вы видите, что я имею в виду?

Я неправильно понимаю, как наследование работает здесь? Если я, какой лучший способ повторить такое поведение? Я пытаюсь следоватьэто (пункт 2) в качестве ориентира того, как я хочу эту работу. Я предполагаю, что он может бежатьLink.all найти все ссылки, а не включать все остальные классы, которые наследуются отItem, Я ошибаюсь?

Ответы на вопрос(1)

Ваш ответ на вопрос