深入探索Rails与Ajax的集成应用
1. API粒度调整
在开发过程中,API的粒度是一个需要考虑调整的方面。在构建非Ajax的Rails应用时,通常会组织控制器,让它们为特定网页生成合适大小的信息块。然而,当开始在网站中应用Ajax时,每个组件都有了各自独特的需求。
此时,创建一个每次调用操作更小信息片段的API会很有帮助,这样就能更轻松地通过特定接口组件更改数据模型的某一部分。一开始,让组件加载一组数据并仅修改所需部分可能看似更容易,但当多个组件缓存了相同数据并对不同部分进行更改时,情况就会变得难以预测。目前并没有简单的规则来解决这个问题,不过在深入使用Ajax时,这是必须要考虑的因素。
2. Rails与客户端交互
尽管Rails是一个服务器端框架,但它提供了多种功能,可用于在Rails内部创建基于客户端的Ajax应用,避免了手动编写JavaScript的挑战。
- 辅助方法 :Rails的辅助方法不仅能创建基本的HTML,还能为构建更出色的DHTML和Ajax界面提供支持。
- 与Prototype和Script.aculo.us集成 :
- Prototype库是一个简单的JavaScript库,它简化了常见任务,如进行XmlHTTPRequest调用和检索文档中的节点。
- Script.aculo.us基于Prototype构建,提供了各种图形效果,使构建用户可交互的可视化界面变得更加容易。如果不喜欢这两个库,也有其他选择,例如jRails,它能将jQuery与Rails集成,详情可参考http://ennerchi.com
超级会员免费看
订阅专栏 解锁全文
71

被折叠的 条评论
为什么被折叠?



