`
andrew.yulong
  • 浏览: 171284 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ActiveJax - Ruby版的DWR

阅读更多

ActiveJax是一个ruby on rails的插件,可以把你的ActiveRecord对象的查询方法直接暴露给客户端的JavaScript来调用,原理非常近似Java的AJAX框架DWR,但是要比DWR简单好用: 

class Author < ActiveRecord::Base   
  active_jax   
  def find_by_name(n)   
    find(:all, :conditions 
=> {:name => n})   
  end  
end  

在model对象上面直接声明active_jax就可以把自己声明的find_by_name方法暴露出去,然后在JavaScript里面引用:
 

ActiveJax.Author.find_by_name("Nicholas Schlueter").   
  each(
function(author) {   
  alert(author.name);   
});  

用ActiveJax.model.find....的方法直接调用服务器端的model的find方法,注意,这里使用的是prototype js库的语法。对于服务器端的对象,你还可以声明排除某些字段属性,避免一些信息的泄漏:

class Author < ActiveRecord::Base   
  active_jax :include 
=> :publisher, :excluded_columns => :email  
  belongs_to :publisher  
  def find_by_name(n)   
    find(:all, :conditions 
=> {:name => n})   
  end  
end  

如上所示,排除了email字段。

分享到:
评论

相关推荐

    服务器端ajax框架--------DWR实践总结

    **服务器端Ajax框架——DWR实践总结** DWR(Direct Web Remoting)是一个开源的Java框架,它使得在Web应用程序中实现Ajax(异步JavaScript和XML)功能变得更加简单。DWR允许JavaScript在客户端与服务器端Java对象...

    ---------DWR中文文档

    Direct Web Remoting (DWR) 是一个开源Java库,它允许Web应用程序在客户端JavaScript和服务器端Java代码之间进行实时通信,无需使用XMLHttpRequest或JSONP等传统Ajax技术。DWR通过提供一套简单易用的API,使得开发...

    java之ajax开发---dwr基础(适合基础开发ajax)

    &lt;servlet-name&gt;dwr-invoker&lt;/servlet-name&gt; &lt;servlet-class&gt;uk.ltd.getahead.dwr.DWRServlet&lt;/servlet-class&gt; &lt;init-param&gt; &lt;param-name&gt;debug&lt;/param-name&gt; &lt;param-value&gt;true&lt;/param-value&gt; &lt;/init-param&gt; ...

    Dwr 学习研究应用--Spring和DWR的整合

    4. **DWR-Spring集成**:为了让DWR能够找到Spring容器中的bean,你需要创建一个SpringDwrServlet,它是DWR的扩展,能够从Spring上下文中查找bean。这通常涉及到修改web.xml配置文件: ```xml &lt;servlet-name&gt;DWR...

    整理好的DWR-2.0.5-src

    这个不是我的原创,原文件出至这里:...原资源包含了,源代码和API Doc,只是美中不足的是没有整理成可用的zip文档,我这特分离了一下,并重新打好包了,初步测试了一下能用。

    dwr源码包,dwr.jar包下载

    &lt;servlet-name&gt;dwr-invoker&lt;/servlet-name&gt; &lt;servlet-class&gt; org.directwebremoting.servlet.DwrServlet &lt;/servlet-class&gt; &lt;init-param&gt; &lt;param-name&gt;debug&lt;/param-name&gt; &lt;param-value&gt;true...

    spring-hibernate-dwr实例

    spring-hibernate-dwr做的AJAX操作CRUD实例 ...1.3.jar poi-2.5.1.jar cos.jar velocity-1.5.jar velocity-tools-view-1.3.jar commons-codec.jar dwr-2.0.rc2.jar asm.jar files.lst

    commons-logging-1.1.1+dwr

    commons-logging-1.1.1.jar 与 dwr.jar 配合使用 前后端通信 commons-logging-1.1.1.jar 与 dwr.jar 配合使用 前后端通信 commons-logging-1.1.1.jar 与 dwr.jar 配合使用 前后端通信

    源码分享-ibatis+dwr+jQuery

    【标题】"源码分享-ibatis+dwr+jQuery"是一个关于使用这三种技术构建的简单商城系统的源码集合。Ibatis、Direct Web Remoting (DWR) 和 jQuery 是Web开发中的关键组件,它们共同作用于提升应用程序的性能和用户体验...

    dwr配置文件详解 dwr.xml配置文件详解

    dwr配置文件详解 dwr.xml配置文件详解 dwr配置文件是Direct Web Remoting(DWR)的核心组件之一,它负责配置DWR的各种设置和参数。在本文中,我们将详细介绍dwr配置文件的结构和配置方法,并探讨它在实际应用中的...

    commons-logging-1.1.1,DWR,jstl

    "DWR"(Direct Web Remoting)是一种JavaScript和Java之间的远程调用技术,它允许在Web浏览器上执行服务器端的Java代码,从而实现双向通信,即服务器可以主动向客户端推送数据。DWR在富互联网应用(RIA)中广泛应用...

    DWR2.0中文文档

    ### DWR2.0中文文档知识点解析 #### DWR概览 DWR(Direct Web Remoting)是一种开源框架,用于简化Ajax应用的开发过程。它允许JavaScript直接调用服务器端的Java方法,从而实现了客户端与服务器端之间的无缝交互。...

    dwr-1.13.jar及dwr.xml

    dwr-1.1.3.jar及dwr.xml. dwr-1.1.3与dwr-2.0的dwr.xml略有区别: dwr-1.1.3 &lt;!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" ...

    dwr相关配置笔记 代码说明

    最基本的配置包括定义一个名为`dwr-invoker`的Servlet,指向`uk.ltd.getahead.dwr.DWRServlet`的类。这样,所有以`/dwr/*`开头的URL请求都将被DWRServlet处理。例如: ```xml &lt;servlet-name&gt;dwr-invoker&lt;/servlet...

    ajax--dwr测试

    &lt;servlet-name&gt;dwr-invoker&lt;/servlet-name&gt; &lt;display-name&gt;DWRServlet&lt;/display-name&gt; &lt;description&gt;DirectWebRemoterServlet &lt;servlet-class&gt;org.directwebremoting.servlet.DwrServlet&lt;/servlet-class&gt; &lt;init...

    AJAX--dwr开发及应用

    \第五部分ajax\第15章 AJAX--dwr开发及应用\第15章 AJAX--dwr开发及应用.ppt )

    Extjs--DWR做的动态树

    ExtJS 是一个流行的JavaScript库,用于构建富客户端的Web应用程序,而DWR(Direct Web Remoting)则是一种在客户端JavaScript和服务器端Java之间进行实时通信的技术。这篇博客文章"Extjs--DWR做的动态树"可能探讨了...

    AJAX高级的应用--DWR框架使用的学习笔记

    &lt;servlet-name&gt;dwr-invoker&lt;/servlet-name&gt; &lt;servlet-class&gt;org.directwebremoting.servlet.DwrServlet&lt;/servlet-class&gt; &lt;init-param&gt; &lt;param-name&gt;debug&lt;/param-name&gt; &lt;param-value&gt;true&lt;/param-value&gt; ...

Global site tag (gtag.js) - Google Analytics