Hola a todos,
Llevo toda la tarde liado con un tema muy básico pero que no me deja
avanzar con mi aplicación en Rails. Tengo dos controladores, uno que
hereda del de Application y otro de este mismo, llamando a un método del
primero.
Os pongo el código:
queue_controller.rb
class QueueController < APIController
before_filter :responds
def select_by_cli_and_id
#@result = QueueModel.find(:all, :conditions => [“cli_id_fk = ? and
id = ?”, 198, 78])
@result = [‘aaa’, ‘bbb’]
end
def select_by_cli_and_acvd_order
@result = QueueModel.find(:all, :conditions => [“cli_id_fk = ? and
id = ?”, 198, 78])
end
def select_by_cli_and_acvd_order_by_id_limit
@result = QueueModel.find(:all, :conditions => [“cli_id_fk = ? and
id = ?”, 198, 78])
end
def select_strategy_by_id
@result = QueueModel.find(:all, :conditions => [“cli_id_fk = ? and
id = ?”, 198, 78])
end
def select_by_cli_and_acdv_order_by_nombrecola
@result = QueueModel.find(:all, :conditions => [“cli_id_fk = ? and
id = ?”, 198, 78])
end
private
def responds
#super([‘una cosa’, ‘otra cosa’])
super(@result)
end
end
api_controller.rb
class APIController < ApplicationController
def index
redirect_to(:controller => ‘home’)
end
private
def responds(result)
@result = result
respond_to do |format|
format.html { @phpSerialized = PHP.serialize(@result) }
format.xml { render :xml => @result }
end
end
end
El caso es que intento pasarle la variable @result del primero al
segundo y nada, ni puto caso. Como véis, he probado a enviar un array
desde “responds” directamente (el que está ahora comentado) y lo recibe
sin problemas, asà que el error está al intentar recuperar la variable
de “select_by_cli_and_id”, ya que enviándolo desde ahà no lo recibe ni
para trás.
¿Me podéis echar una mano? Seguro que es una tonterÃa, pero estoy
empezando con Ruby y me encuentro bastante perdido…
Gracias. Un saludo.