我想在我的应用程序上制作一些图表,所以我开始使用 http://www.jqplot.com/index.php
它使用数组来输入数据,所以我尝试在 ruby 中创建一些数据数组,然后我可以在 javascript 中打印。
即 @array_example = [1,2,3,4,5]
在打印时不起作用,但是 @array_example = "[1,2,3,4,5]"
会起作用。
无论如何,我的第一个问题是,如果我有:
<% @chart_posts = Post.where(:user_id => @profile.user.id) %>
使用此数据创建数组的好方法是什么(如果我想要数组中每个帖子的 ID,以及第二个带有 created_at
的数组)?
为了更清楚一点,最终的数组在打印时需要看起来像一个数组。
即它必须有 [
围绕它,并且 ,
在每个项目之间。
最佳答案
我不太清楚你的最终数组应该是什么样子,但我认为 map
应该能满足你的需要。
ids = @chart_posts.map(&:id)
# => [1,2,3,4]
created_ats = @chart_posts.map(&:created_at)
# => [timestamp,timestamp,timestamp,timestamp]
您也可以将其组合成一个带有 map 的二维数组:
array = @chart_posts.map {|post| [post.id, post.created_at]}
# => [[1, timestamp],[2,timestamp]]
关于ruby-on-rails - 在 Ruby、rails3 中创建数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4917719/