У меня есть обычное действие, которое создает объект комментария, в котором ответ имеет множество комментариев.
Я испытываю странную ошибку, которая иногда удаляет существующие комментарии для ответа, когда к этому ответу добавляется новый комментарий. Новый комментарий также удаляется.
MongoHQ любезно направил меня к этой проблеме: https://github.com/mongoid/mongoid/issues/1173, но я использую mongoid2.2, которая, как предполагается, не имеет этой проблемы.
class Answer
include Mongoid::Document
has_many :comments, :dependent => :delete
class Comment
include Mongoid::Document
belongs_to :answer
# answer controller
def comment
answer=Answer.find(params[:id])
c=Comment.new(:text=>params[:text],:user_id=>current_user.id,:answer_id=>answer.id)
success=c.save
respond_to do |format|
format.json {
render :json=>c.to_json
else
render :json=>{"failure"=>c.errors}.to_json
end
}
end
end
Более подробная информация включена здесь:
http://pastie.org/2488895