我必須有與之關聯的價格等級數DataObjects
共享。我可以在另一個DataObject
中建立這種關係,但是這些層次不會改變,我認爲最好的方法是在config.yml
中定義它們。枚舉列表與多個數據對象
理想我想定義DataObject
,如:
private static $db = array(
'Price' => 'Enum(array("Tier 1", "Tier 2"))'
)
但是我不能想辦法在SilverStripe正確做到這一點有像yaml
維修單點。我也想過把它設置爲Varchar
,並在設置之前檢查它是否在數組中,但是這不會允許通過枚舉填充列表等等(可能應該調用配置)。我也可以寫出陣列,但至少有兩個地方可能會難以維護。
什麼做什麼,我試圖實現這幾個對象引用數組在一個地方設置的最佳方式?
我認爲我喜歡你的延伸,這是所有可能的答案中最重要的。看起來非常可重用。我想在我的分貝然後我只有「價格」=>「MyEnum」? – Rudiger
是的。我想你也可以指定默認值,如果相關,例如'MyEnum( 「默認值」)'。 – ntd