I am doing charts with https://www.chartkick.com/ and basically my installation already works. However, I can access the chart js libraries only from views. In a view I can say pie_chart (with parameters), and I will get a nice pie chart.

But I would like to compose the page html in controllers so I would not need to enclose every damn line in <% %>. But for controllers, the graph suite's command pie_chart is a "command not found".

Then I tried a helper,  and calling the helper's method:

def piechart_test
    pie_chart({"a" => 4, "b" => 5, "c" => 7})
  end

 in a controller. Partial success. I get the following output:

<div id="chart-1" style="height: 400px;width: 100%;text-align: center;color: #999;line-height: 400px;font-size: 14px;font-family: 'Lucida Grande', 'Lucida Sans Unicode', Verdana, Arial, Helvetica, sans-serif;">Loading...</div> new Chartkick.PieChart("chart-1", {"a":4,"b":5,"c":7}, {"colors":["pink","#999"]});

It says "Loading...", but it never loads. Whereas if I call the same helper method from the view, the graph loads ok.

I could now move my whole html composition from the controller to a helper, and then call that from the view. A downside is that helpers are not namespaced, so it would feel a less clean solution.

Tips would be appreciated! BTW, Rails 5.x.

- Jussi

--
You received this message because you are subscribed to the Google Groups "Ruby on 
Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/33f7a9ad-2dfb-35a7-e18c-5bb330177e5a%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to