RoR 3.1 - button_to_function для блокировки пользователя - PullRequest
1 голос
/ 17 января 2012

Я пытаюсь найти лучший способ заблокировать учетную запись пользователя на моей странице user / views / index. Я пытаюсь использовать метод button_to_function, но не могу найти правильный способ сделать это.

У меня есть простой метод в моей модели User для выполнения этого:

*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"*

1 Ответ

0 голосов
/ 17 января 2012

Вы не можете вызывать метод модели непосредственно из представления.

Вам нужно создать действие на вашем контроллере и вызвать там метод модели.

Основной рабочий процесс:

Link in View -> Url -> Controller.Action -> Model ->Method.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...