我試圖創建一個Tour
與Steps
在Ruby和Mongoid序列:如何管理的Mongoid和紅寶石
class Tour
include Mongoid::Document
field :name, type: String
embeds_many :steps
end
class Step
include Mongoid::Document
field :name, type: String
embedded_in :tour
end
什麼是最好的方式來管理的步驟的有序序列?(考慮:插入,刪除,走動步驟)
我的第一反應就是做一個單向鏈表風格,存儲下一個步驟:
class Step
include Mongoid::Document
field :name, type: String
embeds_one :step, store_as: "next_step"
embedded_in :tour
end
興趣,如果任何人有更好的設計建議:)
謝謝!
如果您想更改步驟順序,使用單向關係會導致難以維護。爲什麼不保持embeds_many +一個順序字段? – apneadiving
感謝您的及時迴應@apneadiving :) –
它回答你的問題嗎? – apneadiving