30、基于 Ruby on Rails 的 ideaStax 编辑器开发全解析

基于 Ruby on Rails 的 ideaStax 编辑器开发全解析

1. 仅客户端实现概述

仅使用 JavaScript、XHTML 和少量 CSS 实现的拖放界面示例,手动实现能让我们对新技术更有信心,且可在无服务器的环境中运行。但仅客户端实现缺乏与更多资源的连接,也无法保存时间线供用户分享和后续使用。因此,我们将把 ideaStax 编辑器重构为端到端的 Ruby on Rails 应用程序,利用后端服务器和数据库实现这些重要功能。

2. 服务器支持的 ideaStax 编辑器

仅客户端版本的 ideaStax 编辑器为 script.aculo.us 的 Draggable、Droppable 和 Sortable 对象提供了很好的参考示例,但缺少服务器部分。在大多数实际的富互联网应用(RIA)中,Droppable 和 Sortable 等对象的回调会触发 AJAX 调用,通知远程服务器事件发生。服务器决定如何更新 RIA 页面并返回相应更新,客户端将其插入 DOM 树的预定义位置。

与纯 JavaScript 或 XML + JavaScript 解决方案相比,这种模式可能需要更多 AJAX 请求和服务器资源,但简化了服务器端部分的创建和维护。部分(partial)是 Rails 团队提出的术语,指可重用的小型原子视图代码。例如 ideaStax 编辑器中的 XHTML 幻灯片就是典型的部分。在服务器支持的实现中,部分可保持 XHTML 状态,无需 JavaScript。

服务器支持的 ideaStax 编辑器还有其他不同之处,如照片从数据库查询加载,script.aculo.us 对象会被告知可进行 AJAX 请求的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值