2010-11-22 103 views
0

我想創建一個具有屬性數組的MongoMapper模型。這個數組應該包含所有類型的信息(整數,浮點數,URL,枚舉,日期,與其他文檔的關係),這取決於用戶的願望。MongoMapper和自定義類型屬性

我的問題是如何實現屬性數組,如何實現屬性的自定義數據類型。我想這個序列化文檔應該看起來類似於:

{ 
    ... 
    attributes: { 
    age: { 
     name: "Age", 
     type: "Integer", 
     value: 12 
    }, 
    height: { 
     name: "Height", 
     type: "Float", 
     value: 1.86 
    }, 
    mother: { 
     name: "Mother", 
     type: "Relation\Person", 
     value: "\people\sara" 
    } 
    } 
} 

任何想法如何解決這個問題?我的第一個工作是創建一個基類,就像工廠必須序列化和反序列化這些屬性,但是從我設法編寫的代碼中,沒有任何工作正常。

在此先感謝!

回答

0

你可以做一個自定義類型,但是如果你有一個數組,爲什麼不使用一個嵌入對象呢?

看到這個: http://speakerdeck.com/u/jnunemaker/p/mongomapper-mapping-ruby-to-and-from-mongo

幻燈片47-49。

+0

我一直在試圖使用嵌入式文檔,但我想我不是很擅長解釋:)我已經改變了我的模型,我想一切都開始工作,完美。謝謝 :) – 2010-11-22 21:42:22