Saya mendapat jawaban ini dari grup Brigade Seattle -
===
Saya tidak melihat start_date didefinisikan dalam kode Anda sebagai kunci di MongoMapper, jadi saya akan menganggap Anda membuat objek tanggal Anda sendiri, baik secara langsung melalui Ruby, atau dibungkus oleh Rails. Sejauh yang saya tahu, dan seseorang tolong perbaiki saya, tanggal Mongostore sebagai waktu UTC dalam milidetik sejak zaman. Jadi ketika Anda mendefinisikan akey dengan pemetaan :date di MongoMapper, Anda membungkus objek Time di Ruby.
Oleh karena itu, jika Anda ingin menyimpan tanggal di dalam Mongo, dan tanggal tersebut tidak dibuat oleh MongoMapper, pastikan Anda membuat objek Waktu di UTC. MongoMapper dilengkapi dengan metode mixin Tanggal yang disebut to_mongo yang dapat Anda gunakan.
>> Time.now.utc
=> Fri Jan 28 03:47:50 UTC 2011
>> require 'date'
=> true
>> date = Date.today
=> #<Date: 4911179/2,0,2299161>
>> Time.utc(date.year, date.month, date.day)
=> Thu Jan 27 00:00:00 UTC 2011
>> require 'rubygems'
=> true
>> require 'mongo_mapper'
=> true
>> Date.to_mongo(date)
=> Thu Jan 27 00:00:00 UTC 2011
Tapi hati-hati dengan perubahan waktu.
>> Date.to_mongo(Time.now)
=> Thu Jan 27 00:00:00 UTC 2011
>> Date.to_mongo(Time.now.utc)
=> Fri Jan 28 00:00:00 UTC 2011
Semoga berhasil.
===
Dan dengan menggunakan
Date.to_mongo(start_date)
itu berhasil untuk saya.