Hola,
Soy nuevo en Rails!! y ademas soy desarrollador nuevo en ambiente web!!
Para mi trabajo estoy desarrollando una aplicación que debe realizar lo siguiente:
1. Cuando el usuario ingresa debe presentar una tabla con registros de negocios.(ok)
2. Debe permitir realizar filtros de los negocios por fechas (ok)
3. Con la selección de registros presentados debe generar gráficas por la columna ramo
Para lo anterior he venido trabajando con las siguientes gemas:
1. Para filtrar con Ransack, esta funcionando bien, me ha permitido filtrar lo que el usuario quiere generar
2. Para la generación de gráficas he implementado Flot js, me ha funcionado bien.
El problema que tengo es que no se como pasar el conjunto de registros que genera el filtro (@negocios) de un método a otro, es decir, se realiza el filtro, se presenta en la tabla, pero cuando se desea generar la gráfica esta solo funciona cuando ha ingresado por primera vez, es decir, tiene todos los registros.
He utilizado el Puts @negocios.inspect para ver los registros pero antes de ejecutar el método de la gráfica va en nil.
El siguiente es el código del controlador:
class NergociosController < AplicationController
respond_to :json, :html
...
def index
@negocios = Negocios.order('actividad DESC', fecha_solicitud DESC').page(params[:page])
@search=Negocios.search(params[:q])
end
def gramos
puts @negocios.inspect (=> nil)
puts @search (=> "")
@data_negocios = Negocios.all.group_by(&:ramo).map {|k,v| {label: k.nombre, data: v.count}} (así funciona las gráfica cuando el usuario inicia)
@data_negocios = @negocios.all.group_by(&:ramo).map {|k,v| {label: k.nombre, data: v.count}} (esto es lo que quiere)
No se si la solución planteada es la correcta o con que sugerencias me pueden orientar.
Gracias,
Gerardo Ramírez