настраиваемые действия длятека - PullRequest
0 голосов
/ 08 декабря 2011

У меня есть 3 настраиваемых действия для моего контроллера, и я надеялся, что каждое из них использует объект ресурса, который дает нам наследованный_ресурсы. Так что в основном вместо:

def cancel
  @job = resource.cancel!
end

def restart
  @job = resource.restart!
end

def start
  @job = resource.start!
end

Я хочу просто пропустить это:

def cancel
  @job.cancel!
end

def restart
  @job.restart!
end

def start
  @job.start!
end

Проблема в том, что @job выходит ноль. Поэтому я проверил документацию и узнал о пользовательских действиях. Поэтому я добавил это в свой контроллер:

custom_actions :resource => [:cancel, :start, :restart]

но @job по-прежнему равен нулю. Я также попробовал:

actions :all

, чтобы сказать IR применить ресурс ко всем действиям, и он все еще не работает. Что я делаю не так?

1 Ответ

3 голосов
/ 31 декабря 2011

Вы должны обернуть вызов следующим образом:

def cancel
  cancel! do
    @job.cancel!
  end
end

Это заставляет IR работать и затем передавать управление вашему блоку (с уже установленным ресурсом).

...