`
花花公子
  • 浏览: 131731 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ruby1.2,AJAX更简单

阅读更多
还没有深入研究,只是刚接触了scaffold_resource。
首先请按照官方blog升级,然后利用scaffold_resource生成一个模型。添加以后选择删除,确认以后你发现了什么?页面没有刷新!这是什么?这就是AJAX啊!
通过原生支持Restful,AJAX将会被更简单的表达(直接调用xmlhttprequest就行,服务端无需多余代码)。另外对应的url也有了简化(自己看代码吧),index和edit的时候都不需要写:action=>:save这样的字样了。

目前我只在这个层面上看到resources的利用,rss支持自然也很好,但是同样期待更丰富的应用。

dynamic-scaffold-resource也很有趣,现在自动生成的代码是每个字段都写在表单里的,而用了它以后,又可以用'scaffold :model' 了。
分享到:
评论
3 楼 qiezi 2006-12-08  
跳转也还是有的:
引用

Processing PostsController#destroy (for 127.0.0.1 at 2006-12-08 17:19:30) [DELET E]
  Session ID: 905dfe759a338e2488b37a5da5508a24
  Parameters: {"_method"=>"delete", "action"=>"destroy", "id"=>"6", "controller" =>"posts"}
  SQL (0.015522)    SELECT a.attname, format_type(a.atttypid, a.atttypmod), d.ad src, a.attnotnull
FROM pg_attribute a LEFT JOIN pg_attrdef d
ON a.attrelid = d.adrelid AND a.attnum = d.adnum
WHERE a.attrelid = 'posts'::regclass
AND a.attnum > 0 AND NOT a.attisdropped
ORDER BY a.attnum

  Post Load (0.032803)   SELECT * FROM posts WHERE (posts.id = 6)
  SQL (0.000082)   BEGIN
  Post Destroy (0.000437)    DELETE FROM posts
WHERE id = 6

  SQL (0.010730)   COMMIT
Redirected to http://localhost:3000/posts
Completed in 0.07706 (12 reqs/sec) | DB: 0.05957 (77%) | 302 Found [http://local host/posts/6]


Processing PostsController#index (for 127.0.0.1 at 2006-12-08 17:19:30) [GET]
  Session ID: 905dfe759a338e2488b37a5da5508a24
  Parameters: {"action"=>"index", "controller"=>"posts"}
  Post Load (0.001275)   SELECT * FROM posts
Rendering content_typetext/htmllayoutfalseactionindex within layouts/posts
Rendering posts/index
Completed in 0.01207 (82 reqs/sec) | Rendering: 0.00177 (14%) | DB: 0.00128 (10% ) | 200 OK [http://localhost/posts]

它在这方面的改进主要体现在post_path和method上。

scaffold_resource生成的代码中,并没有用到HTTP的DELETE,而是自己模拟的,可能是因为浏览器暂时支持不好吧。
2 楼 花花公子 2006-12-08  
哦,我把页面无跳转刷新混同为AJAX了。现在不使用xmlhttprequest就可以实现修改和删除直接刷新了,不过实现机制好像和浏览器处理PUT和DELETE协议的特性有关。不过现在直接RESTful,controller支持AJAX的代码基本可以不写了。
1 楼 qiezi 2006-12-08  
scaffold_resource什么时候生成了Ajax调用?它连prototype都没包含。

相关推荐

    Ajax详解.rar

    1.2 使用 Google Ajax Search API 的准备工作 101 1.3 Google 的 API 文档 104 1.4 最简单的 Google 搜索 Web 应用程序 104 1.5 Ajax 在哪里? 109 1.6 深度探索 Google 的 Ajax Search API 111 第 10 部分: ...

    Ajax基础教程(扫描版)

     ajax技术可以提供高度交互的web应用,给予用户更丰富的页面浏览体验。本书重点介绍ajax及相关的工具和技术,主要内容包括xmlhttprequest对象及其属性和方法、发送请求和处理响应、构建完备的ajax开发工具、使用...

    Ruby on Rails Web开发之旅.pdf【第二部分】

    《Ruby.on.Rails.Web开发之旅》,作者:【德】Patrick Lenz,翻译:王德民、刘昕、裴立秋,出版社:人民邮电出版社,ISBN:9787115188526,PDF 格式,大小 144 Mb,被压缩为 3 部分,本资源是第二部分;第一部分下载...

    Ruby on Rails Web开发之旅.pdf【第一部分】

    《Ruby.on.Rails.Web开发之旅》,作者:【德】Patrick Lenz,翻译:王德民、刘昕、裴立秋,出版社:人民邮电出版社,ISBN:9787115188526,PDF 格式,大小 144 Mb,被压缩为 3 部分,本资源是第一部分;第二部分下载...

    Ruby on Rails Web开发之旅.pdf【第三部分】

    《Ruby.on.Rails.Web开发之旅》,作者:【德】Patrick Lenz,翻译:王德民、刘昕、裴立秋,出版社:人民邮电出版社,ISBN:9787115188526,PDF 格式,大小 144 Mb,被压缩为 3 部分,本资源是第三部分;第一部分下载...

    cake php框架 v1.2(仿rails)

    10.AJAX,JavaScript,HTML Form以及更多的View Helper.. 11.安全,对话(Session),请求处理组件(Request Handling Components) 12.灵活的ACL机制 13.数据的清理(Data Sanitization) 14.灵活的视图...

    Aptana.Studio.Professional.v1.2.7.024774.Incl.KeyMaker.and.Patch-DVT.part01.rar

    去年Aptana吸收了Radrails项目,添加了非常强大的Ruby on Rails支持。但是Aptana前进的脚本并未停止。随着苹果公司iPhone手机的发布,Aptana也推出了功能完备的iPhone集成开发功能,在Adobe公司的RIA产品AIR推出不久...

    Selenium深入浅出1.2.pdf

    - 要确保页面完全加载后再进行操作,因为 EXT 应用通常包含大量的 AJAX 调用。 #### 七、动态执行 JavaScript 代码的注意点 - **等待机制**:确保页面元素加载完成后再执行 JavaScript 操作,可以通过显式等待或...

    Agile Web Development with Rails中文版 3rd Edition

    **1.2 读你所需** 本章节鼓励读者根据自己的兴趣和需求挑选章节阅读,而不是按照传统的线性顺序逐页阅读。这种灵活的学习方式符合敏捷开发的精神,即根据实际情况灵活调整学习和工作的方向。 #### 二、Rails应用的...

    Jquery资料大全

    Rails是Ruby的一个流行Web开发框架,而jQuery的集成可以提升用户体验,使得页面动态化和交互性更强。在Rails中,jQuery通常用于AJAX请求,实现无刷新页面更新,以及创建复杂的用户界面效果。 2. **jQuery ...

    RESTful Rails Development

    - **安装 Rails 1.2 或更高版本**:确保使用了支持 RESTful 开发的 Rails 版本。 - **了解基本概念**:熟悉 REST 的基本原则以及 HTTP 方法的作用。 #### 1.5 资源 Scaffold Rails 提供了一个强大的工具,即 ...

    jquery 技巧总结

    - **Ajax支持**:集成了Ajax功能,使得异步请求变得简单。 ##### 1.2 目的 本文档旨在帮助读者全面了解jQuery的基本概念和使用方法,通过一系列实践案例加深理解。学习目标包括: - 理解jQuery与其他JavaScript库...

    Prototype.and.script.aculo.us.Dec.2007.pdf

    Prototype的设计哲学是使JavaScript变得更像动态语言Ruby,因此在Ruby on Rails社区中非常受欢迎。 #### 1.2 script.aculo.us框架 script.aculo.us是基于Prototype的一个视觉效果和用户界面行为库。它提供了丰富的...

    cakephp-cakephp

    在开发过程中,CakePHP 提供了丰富的功能和工具,例如ActiveRecord风格的数据访问接口,使得数据库操作简单直观;它还支持自动验证和数据清理,提高了数据安全性和一致性。另外,它的 Bake 工具能自动生成模型、控制...

    TimeSheet-:时间表

    使用AJAX请求获取数据 与API后端集成 节点 Ruby on Rails 在开发中代理API请求 配置代理后出现“无效的主机头”错误 手动配置代理 配置WebSocket代理 在开发中使用HTTPS 在服务器上生成动态<met

    ASP EXCEL导入SQL

    而以序列化的JavaScript对象为基础的JSON已经获得了广泛认可,它被认为能以远比XML更好的方式来序列化和传输简单数据结构,而且它更简洁。这对REST是一个极大贡献和补充。  当前的网络应用软件还违背了REST的“无...

    Web开发敏捷之道-应用Rails进行敏捷Web开发-第三版.rar

    除了上述两部分外,对Rails缺乏了解的读者应该首先阅读“起步”部分,通过一个最简单的应用示例感性了解这个时下热门的web框架。不熟悉Ruby的读者应该阅读“附录”部分中的“Ruby简介”,以便了解Ruby的基本语法与...

    ssh所需要的jar.1

    7. **dwr.jar**:Direct Web Remoting (DWR) 是一个Java库,允许在浏览器和服务器之间进行异步的JavaScript到Java的调用,简化了Ajax开发,使得Web应用可以更加动态和交互。 8. **...

Global site tag (gtag.js) - Google Analytics