Javascript 获取Rails/Chart.JS的哈希值
您好,我正在用RoR编写一个表单生成器,我想为我的任何问题生成几个图表。对于我的问题x,我有这个结果Javascript 获取Rails/Chart.JS的哈希值,javascript,ruby-on-rails,ruby,charts,chart.js,Javascript,Ruby On Rails,Ruby,Charts,Chart.js,您好,我正在用RoR编写一个表单生成器,我想为我的任何问题生成几个图表。对于我的问题x,我有这个结果 {"answer1"=>2, "answer2"=>2, "answer3"=>1, ...} 我想知道如何访问第二个数据(数字),以及如何在Chart.js脚本上设置“label”和“data”字段: answer= [<% for rep in @polls4 %> "<%= rep.nom %>", &l
{"answer1"=>2, "answer2"=>2, "answer3"=>1, ...}
我想知道如何访问第二个数据(数字),以及如何在Chart.js脚本上设置“label”和“data”字段:
answer= [<% for rep in @polls4 %>
"<%= rep.nom %>",
<% end %>];
var myChart = new Chart(ctx, {
type: 'bar',
data: {
labels:answer,
datasets: [{
label: '# of Votes',
data: ?,
backgroundColor: [
谢谢相反,在JS中添加一个循环,将polls变量初始化为一个ID数组,这样可以避免收集它们,并在JS代码中添加Ruby逻辑:
@polls4 = @polls.where('question_id = ?', 4).pluck(:nom)
在进行分组时,您会得到密钥/值数据的散列,使用Pulk只会得到每个轮询的id:
因此,图表:
var answer = "<%= @polls4 %>";
var myChart = new Chart(ctx, {
...
});
var-answer=”“;
var myChart=新图表(ctx,{
...
});
我建议您将@polls4变量重命名为更具描述性的变量,并避免在变量名中使用数字。您希望标签=['answer1'、'answer2'、…]和数据=[2、2、…]。我说得对吗?@hamdi是的,没错谢谢你@sebastianPalma!
var answer = "<%= @polls4 %>";
var myChart = new Chart(ctx, {
...
});