取以下 MongoMapper 文档。
class Schedule
include MongoMapper::Document
key :name, String
key :description, String
key :active, Boolean
many :periods
timestamps!
userstamps!
end
class Period
include MongoMapper::EmbeddedDocument
key :number, Integer
key :descriptor, String
key :begin, Time
key :end, Time
end
此外,采取以下 Padrino 路线。
post :period, :map => '/schedule/period' do
s = Schedule.first(params[:id])
s.periods = [
:number => 1,
:descriptor => "This is a description.",
:begin => Time.now,
:end => Time.now
]
end
但是,如果我已经有几个periods
在日程表中,我不会只是覆盖现有的periods
吗?我怎样才能避免这种情况?