Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在Rails中使用Mongoid更新记录_Ruby On Rails_Mongodb_Mongoid - Fatal编程技术网

Ruby on rails 在Rails中使用Mongoid更新记录

Ruby on rails 在Rails中使用Mongoid更新记录,ruby-on-rails,mongodb,mongoid,Ruby On Rails,Mongodb,Mongoid,我正在rails控制台中进行测试: Credential.last.token => nil Credential.last.update_attribute :token, '123' => true Credential.last.token => nil 这是我的班级: class Credential include Mongoid::Document include Mongoid::Timestamps field :_id,

我正在rails控制台中进行测试:

Credential.last.token => nil
Credential.last.update_attribute :token, '123'   => true
Credential.last.token => nil
这是我的班级:

class Credential
  include Mongoid::Document
  include Mongoid::Timestamps

  field :_id,              type: String
  field :user_id,          type: Integer
  field :code,             type: String
  field :provider,         type: String
  field :token,            type: String

end

我做错了什么?

如果您启用了身份映射,则需要将其打包

Mongoid.unit_of_work { Credential.last.token }
Mongoid缓存查询。对于web请求来说,这不是问题,但是在控制台中,您不会看到更改,除非您以工作块为单位进行更改,或者重新启动控制台(而不仅仅是重新加载)

我必须将

attr_accessor :token, ...