Ruby on rails 如何增加一个简单的计数器并执行和更新\u all?

Ruby on rails 如何增加一个简单的计数器并执行和更新\u all?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我试图根据用户登录获取当前ActiveRecord,并将计数器增加1,然后使用新的增加值更新数据库,其中电子邮件地址等于登录用户 除了设置新的递增值外,代码中的所有内容都有效。我试图先将它设置为另一个变量(my_counter),然后再进行更新,但赋值是失败的地方 if User.find_by_email(@email) User.increment_counter(:redirect_count, 1) @my_counter.to_int = :redirect_c

我试图根据用户登录获取当前ActiveRecord,并将计数器增加1,然后使用新的增加值更新数据库,其中电子邮件地址等于登录用户

除了设置新的递增值外,代码中的所有内容都有效。我试图先将它设置为另一个变量(
my_counter
),然后再进行更新,但赋值是失败的地方

if User.find_by_email(@email)
      User.increment_counter(:redirect_count, 1)
      @my_counter.to_int = :redirect_count
      User.update_all({:redirect_count => @my_counter}, :email => @email)
如果我将
my_counter
设置为9,则
Updateall()
会正确更新数据库。

如何

user = User.find_by_email(@email)
user.redirect_count += 1
user.save
使用如何


是的,我试过了,但是…我不能保证这是正确的语法,所以让我再试一次!我将继续指出-如果user.redirect\u count为nil,则需要将其初始化为0,然后才能递增。增加nil将产生一个错误。谢谢!非常感谢。非常感谢。工作得很有魅力!非常感谢!祝你有美好的一天!
user = User.find_by_email(@email)
user.increment!(:redirect_count)