无法保存mongoid哈希值

时间:2014-02-22 03:14:17

标签: ruby-on-rails ruby hash mongoid

我有一个mongoid对象

@tran = Translations.where({:_id => params[:id]})[0]

对象@tran@tran[:translations]

处有一系列哈希值

我尝试更改数组中哈希的值,如下所示:

@tran[:translations][0]['rated'] = (@tran[:translations][0]['rated']+1)

我做了@tran.save

但价值似乎没有更新。

我在这里做错了什么?

PS,这是@tran[:translations]的价值:[{"value":"hello3","rating":100,"rated":0}]

1 个答案:

答案 0 :(得分:1)

@tran = Translation.find params[:id]

您可以使用此行 - >

@tran.update_attributes(:rated => @tran.rated+1)

或者这一行 - >

@tran.rated += 1
@tran.save