ruby-on-rails – 如何在Mongoid中更改文档的_type?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 如何在Mongoid中更改文档的_type?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在Rails应用程序中有以下模型:
class User
  include Mongoid::Document
  ...
end

class Admin < User
  ...
end

我得到一个用户

u = User.find(some_key)

并尝试更改_type:

u._type  # => "User"
u._type = "Admin"
u.save
u._type  # => "Admin"

但是,如果我重新加载对象,它仍然是一个用户

u.reload
u._type = "User"

改变这个的正确方法是什么?

解决方法

你还可以使用 Model#update_attribute来保持mongoid:
user.update_attribute(:_type,"Admin")

猜你在找的Ruby相关文章