从Ruby on Rails应用程序将数据传递到Flex图表的最佳方法是什么?

从Ruby on Rails应用程序将数据传递到Flex图表的最佳方法是什么?

What's the best way to pass data into a Flex chart from a Ruby on Rails application?

存在许多用于将数据从Rails应用程序传递到Flex二进制文件中的方法。 现在,我将旧的e4x resultFormat与xml.erb模板一起使用。 我之前做过AMF,但是我觉得将参数内联到embed本身是一个更好的解决方案,因为您不必等待浏览器加载swf二进制文件和二进制文件来发出Web请求。

考虑到所有这些因素,如今使用Rails后端渲染Flex小部件的最佳实践是什么?


如果图表只是一张要放置在普通html内容中的图形,则自定义编译swf的解决方案可能是一个不错的选择。当然,您仍然应该探索Theo的建议之类的替代方法。

如果您的整个应用程序都是Flash,那就太麻烦了。如果仅导入swf最快,请继续。但是,如果您需要使事情变得更具交互性,在其他地方使用数据或获取新数据,则最好是照原样使用xml模板,或者如果您很懒,则可以使用ActiveRecord :: Base#to_xml方法。


在我看来,您根本不应该使用Flex。 Flex非常适合编写加载和显示数据的应用程序,但是如果您只想显示图表,则开销很大。如果您担心要在两个单独的响应中提供SWF和数据,则应担心Flex框架的200-300 K开销。

使用Flot等更轻量的东西,并提供JavaScript代码,该代码将生成图表和数据。我认为Flex不是适合您所需的平台。


这取决于您是否要使图表保持"实时"状态,例如在数据更改时进行实时更新?如果是这样的话,那么将AMF与Flex本机RemoteObject一起使用将为您提供大量的轮询选项,您也可以仅使用更简单的Flex本机HTTPService。

在这里阅读它们的全部内容:Flex Actionscript 3.0文档


推荐阅读