RoR 3.1-用于锁定用户的按钮_功能

RoR 3.1 - button_to_function to lock user

本文关键字:按钮 功能 用户 锁定 用于 RoR      更新时间:2023-09-26

我正试图找出从我的user/views/index页面锁定用户帐户的最佳方法。我正在尝试使用button_to_function方法,但无法找到正确的方法。

我在我的用户模型中有一个简单的方法来实现这一点:

*def self.lock_user(id)
  user = User.find(id)
  user.update_attribute(:locked_at, Time.now)
end*

我可以在_user.haml.html文件中直接调用这个方法吗。

我正在尝试以下操作,但它只是切换每个"用户":

*@user.each do |user|
.
.
  - if user.locked_at.nil?
    %td= button_to_function "lock", User.lock_user(user.id), :class => "lock_button"
  - else
    %td= button_to_function "unlock", User.unlock_user(user.id), :class => "unlock_button"*

不能直接从视图中调用模型方法。

您需要在控制器上创建一个操作,并在那里调用模型方法。

基本工作流程是:

Link in View -> Url -> Controller.Action -> Model ->Method.