如何根据同一行栏中的另一列编写自动更新一列的方法

时间:2015-12-21 17:11:39

标签: ruby-on-rails

我有一个像这样的用户表:

-----------------------------------------------
| name | email | role | card_amount (integer) |
-----------------------------------------------
| ...  | ...   | ...  | ...                   |
-----------------------------------------------

我想基于card_amount列自动更新角色列,具体情况如下:

if @user.card_amount >= 100

然后角色列将自动更新,如:

@user.role = "buyer"

如何让它自动发生?因此,每次@ user.card_amount> = 100时,角色列将具有值"买方"。

或者当我转到rails控制台并将card_amount更新为100时,角色列也将更新为"买家"?

1 个答案:

答案 0 :(得分:2)

您应该使用<div id="slidedown">回调。例如

before_save

阅读本文:http://guides.rubyonrails.org/active_record_callbacks.html