updated_at = created_at не работает

#ruby-on-rails #mongoid

#ruby-on-rails #mongoid

Вопрос:

Я использую mongoid на rails3. Я пытаюсь выполнить очень простую миграцию, но она не работает. При сохранении сохраняется исходное значение.updated_at вместо.created_at. Это очень озадачивает — у кого-нибудь есть какие-нибудь идеи?

 Answer.all.map{|a| a.updated_at = a.created_at; a.save;}
  

Ответ №1:

Если у вас все еще есть

 Mongoid::Timestamps
  

тогда, включенный в вашу модель обратный вызов после сохранения документа автоматически обновит временную метку updated_at. Я думаю, именно поэтому вы продолжаете видеть свой updated_at всегда с последней временной меткой.

Если вы хотите быстро взломать, вы можете удалить эту строку из своей модели, а затем запустить миграцию.

Не забудьте снова вставить эту строку в вашу модель после миграции.