Как я могу выполнить другое действие другого контроллера (рендеринга тоже) в Rails 2.3.5 без перенаправления? - PullRequest
0 голосов
/ 15 сентября 2011

Я знаю, что это полностью против MVC, но в любом случае это должно быть сделано именно так.Поэтому мне нужно что-то вроде этого:

app/controllers/controller_a.rb
class ControllerA < ApplicationController
  def index
    some_code
  end
end

app/controllers/controller_b.rb
class ControllerB < ApplicationController
  def other_index
    @var = 'example'
  end
end

app/views/controller_b/other_index.html.erb
<%= @var %>

Итак, когда я посещаю URL localhost: 3000 / controller_as / index (я имею в виду тот, который соответствует действию index за controller_a.rb), я должен получитьследующее в моем браузере:

example

Я имею в виду, я должен выполнить действие controller_b other_index и отрендировать other_index.html.erb

Буду признателен за любую помощь.Спасибо.

1 Ответ

0 голосов
/ 15 сентября 2011

Вам необходимо реорганизовать логику controller_b в модель.Альтернативой может быть использование AJAX для вызова controller_b со страницы индекса controller_a

...