2010-05-17 91 views
0

現在在我的代碼我打電話content_for像...如何在Ruby on Rails中使用content_for添加到JavaScript var數組?

<% content_for :javascript do -%> <%= "var boxplot_data=#{@survey.boxplot_answers.to_json};" %> <% end -%>

而是然後有一個整個數組一次我寧願添加到陣列boxplot_data轉換,然後把它顯示爲變種這樣我就可以讓我的代碼更容易閱讀,因爲現在,我在我的部分中使用該數據的位置不在我生成它添加到視圖的位置附近。

回答

0

我想最好的辦法是定義一個幫手:

def add_to_boxplot(val) 
    @boxplot ||= [] 
    @boxplot << val 
end 

def json_boxplot 
    "var boxplot_data = #{@boxplot.to_json}" 
end 

然後在你看來只是使用add_to_boxplot和佈局,而不是yield(:javascript)使用json_boxplot

相關問題