1
I need an abstract controller to redirect the execution of the actions "create" and "show" implemented in modules, according to values passed via params, ex.:
class Indicator::AbstractController < ApplicationController
# é aqui que não funciona
# sei que aqui é a definição da classe, portanto não dá para
# utilizar as variáveis de instancia
include ConcreteController1 if params[:resource_type_id].eql?(1)
include ConcreteController2 if params[:resource_type_id].eql?(2)
#não implementa method/action create
#não implementa method/action show
# já tentei implementar as actions create e view e redirecionar a execução para
# os módulos concretos, mas não consegui.
end
Module ConcreteController1
def create
# metodo de criação especial para o controller1
end
def show
# view especial para o controller1
end
end
Module ConcreteController2
def create
# metodo de criação especial para o controller2
end
def show
# view especial para o controller2
end
end
I have tried to convert the modules into Concretecontroller < Applicationcontroller classes and redirect via Routes but also had difficulties because the number of concrete controllers is variable.
We are in a legacy application on Rails 3.2