这是一个关于Web框架的高级问题,作为桌面应用程序开发人员,我对此并不了解。
我打算构建一个Web应用程序,可以显示存储在数据库中的一些数据。我计划使用Rails进行用户查询。对于可视化,Raphael JS库看起来很好。尝试将Rails与此库连接是一项相当大的任务吗?
欢迎任何替代这些2的建议。
答案 0 :(得分:9)
连接Rails和Raphaël并不需要做太多事情。 Raphaël是一个Javascript库,因此完全在客户端上运行,Rails是一个在服务器上运行的Web应用程序框架。你真正需要做的就是整合它们,包括你网页上的Raphaël,并以易于使用的Javascript格式提供数据;使用以JSON格式提供数据的RESTful控制器应该可以让您轻松地从客户端使用XMLHttpRequest加载数据,然后您可以使用Raphaël显示它。
答案 1 :(得分:2)
Ryan Bates在这个Railscasts中谈论图表(包括拉斐尔),我很确定这是一个很好的起点。
答案 2 :(得分:2)
Raphael是一个独立的JS库,你选择的服务器端框架/语言真的不重要。你不能只将一个插入另一个,你必须弄清楚如何以预期的格式为Raphael提供所需的数据。 Rails在这方面不会比任何其他框架更好或更差。
答案 3 :(得分:0)
应该没有问题,特别是因为Rails 3已经明确了JS库不可知。
快速粗略搜索我看到这个库可能值得您考虑。似乎没有做饼图,但看起来不错:Flot
这个特定的库可以与jQuery集成,jQuery是一个流行的,文档齐全的JS库,Rails 3非常适合。
答案 4 :(得分:0)
如果您感到懒惰,可以使用gem,其中包含相关文件。
答案 5 :(得分:0)
这很容易。 Raphaël是一个javascript库,所以为了使用它,将raphael-min.js文件放在app / assets / javascript文件夹中。然后添加此行
应用程序/视图/布局/ application.html.erb
<!DOCTYPE html>
<html>
<head>
<title></title>
<%= stylesheet_link_tag "application", :media => "all" %>
<%= javascript_include_tag "raphael-min" %>
<%= javascript_include_tag "application" %>
<%= csrf_meta_tags %>
...
然后,将您的javascript代码写入app / assets / javascript / application.js文件。这应该有用。