Rails и передача данных в Javascript - PullRequest
1 голос
/ 24 февраля 2012

У меня есть представление, в котором перечислены все штаты США на основе определенного условия. В том же виде я включил карту SVG, которая подбирает цвет на основе результирующего набора состояний. Часть списка состояний отображается на метод A в моем контроллере, а карта JavaScript связана с другим методом B в том же контроллере. Однако мой метод B должен получить возвращенные списки состояний от A. Как я могу разделить переменную между этими двумя методами? Я попытался before_filter метод загрузить некоторые переменные экземпляра, но это не сработало.

Любая помощь будет оценена.

Код:

def reports
    @query   = @report.search_query
    @results = @query.results(:page => params[:page], :results_per_page => 200).hits
    @state = Array.new
    @results.each do |r|
        @state << r.result.state.abbreviation
    end
    @finalstate = @state.uniq 
end

def data
    state_groups = State.select('abbreviation,premium').inject({}) do |groups, state|
        groups["#{state.abbreviation}"] = {
            :abbreviation => state.abbreviation,
            :group => @finalstate.include?(state.abbreviation) ? "found" : "not",
            :clickable => "true"
        }
    groups
    end
    render :json => state_groups.to_json
end

В моих частичках у меня есть что-то вроде этого:

content_for :footer_scripts do = javascript_bundle :bundle_report

Моя карта JavaScript использует метод data для получения JSON. Этот JSON возвращает ноль, и вот где я застрял.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...