Несколько замечаний здесь:
Вы можете получить записи по порядку, добавив сортировку:
@notes.find({}, :sort => 'datetime')
Вам не нужно выполнять итерации перед вводом шаблона.Метод 'find' возвращает курсор, который сам по себе является итеративным.Так что
@notelist = Set.new()
@notes.find().each{|record| @notelist.add(record)}
Следует читать
@notelist = @notes.find({}, :sort => 'datetime')
Установление нового соединения при каждом запросе очень неэффективно.Вы должны установить соединение в блоке configure и кэшировать там базу данных:
configure do
DB = Mongo::Connection.new.db("testdb")
end
Затем просто используйте ссылку на БД в ваших запросах.