Jeg fik dette svar fra Seattle Brigade-gruppen -
===
Jeg så ikke start_date defineret i din kode som en nøgle i MongoMapper, så jeg antager, at du opretter dit eget datoobjekt, enten direkte via Ruby eller pakket ind af Rails. Så vidt jeg ved, og nogen bedes korrigere mig, dateres Mongostores som UTC-tid i millisekunder siden epoken. Så når du definerer en nøgle med en :date mapping i MongoMapper, pakker du et Time-objekt ind i Ruby.
Derfor, hvis du vil gemme en dato inde i Mongo, og den ikke blev oprettet af MongoMapper, skal du sørge for at oprette et Time-objekt i UTC. MongoMapper kommer med en Date mixin-metode kaldet to_mongo, som du kan bruge.
>> 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
Men pas på tidsændringen.
>> 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
Held og lykke.
===
Og ved at bruge
Date.to_mongo(start_date)
det virker for mig.