3

mongomapper/rails で継承を使用する場合、クラス名をフィールドに保存するのは理にかなっていますか?

class Item
  include MongoMapper::Document
  timestamps!
  key :class, String # does this actually make sense?
  key :title, String
end

class Post < Item
  key :body1, String
end

class Page < Item
  key :body2, String  
end

Item の検索が実行されると、MongoMapper は Item オブジェクトを返します。それらがどの種類のオブジェクトであるかは明らかではありません。アイテムを互いに区別するためにアイコンなどを表示したい場合は、クラス名をデータベースに保存することで実行できます。これは理にかなっていますか、それとももっと良い方法がありますか?

4

1 に答える 1

1

このstackoverflowスレッドを確認することをお勧めします:MongoMapper Parent Inheritance

実際には、キー名として「_type」を使用すると、mongomapperは自動的にクラス名をエントリに追加します。

key :_type, String
于 2010-01-20T17:56:38.127 に答える