Я получил simple_form с несколькими флажками, которые сохраняют массив с именами некоторых методов в моей модели. Форма выглядит так:
<%= simple_form_for @testrun do |f| %>
<%= f.input :testcase, as: :check_boxes,
collection: [["test1", :test1], ["test2", :test2]] %>
<%= f.submit %>
<% end %>
мой метод создания в контроллере выглядит так:
def create
@testrun = Testrun.new(testrun_params)
if @testrun.save
Testrun.delay.process!(@testrun.id)
redirect_to @testrun, notice: 'Test run was successfully created.'
else
render :new
end
end
В моей модели у меня есть метод process!
, который мне нужен для запуска методов в массиве.
def process!
.
.
.
@test = Case.new(self)
@testrun[:testcase].each do |testcase|
@test.send testcase
end
end
когда я запускаю процесс, я получаю сообщение об ошибке NoMethodError: undefined method '[]' for nil:NilClass
Где я был не прав?