`
black_star
  • 浏览: 33017 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

ruby on rails(9) -- AJAX(3)

阅读更多
    效率不高啊, ,看来还是要提高效率。要专注,要心无房屋。

    这节主要是用helper隐藏作侧边栏的购物车,如果没有东西时,隐藏购物车,有东西时渐进显示,突然显示出来,会吓坏小朋友的,所以我们要慢慢的显示出来。
   判断购物车首先不为空 <%unless @cart.items.emtpy? ... end%>
   给购物车加上渐进效果,同样是用Ajax。
   在view/store/add_to_cart.js.rjs 加一下内容
   page[:cart].visual_effect :blind_down if @cart.total_items == 1
  toal_item定义在model/cart.rb下
 
   def total_items
   @items.sum{|item|item.quantity}
   end
  

  接下来,当购物车为空的时候,不显示,通常是加上一个style display:none
  如一般写法。
<div id="cart"<%if @cart.items.empty? %>
                style="display:none"
               <% end %>
>
</div>

  太难看了,而且也容易出错,比如右边尖括号,。
  rails 提供了helper 处理 view。helper可以抽象出view里面的一些过程(直译),那partial处理逻辑/数据,是这样分工么?什么时候用哪个
  一个controller默认生成一个helper.
   编辑view/layouts/store.html.erb
  
   <div id="cart">
	<%hidden_div_if(@cart.items.empty?,:id => "cart") do%>
	<%= render (:partial => "cart",:object => @cart)%>	
	<% end %>	 #为什么用	do end 多行rails	
    </div>
   

   在StoreHelper定义hidden_div_if
  
    module StoreHelper
	def hidden_div_if(condition,attributes = {},&block)
		if condition
			attributes['style'] = "disaply:none"
		end
		content_tag("div",attributes,&block)
	end
   end
   

   content_tag(name,content_or_option,option),&block把hidden_div_if传递给content_tag
   最后改一点,判断是否使用js.rails用xhr缩写代表XMLHttpRequest。用 if request.xhr?判断是否使用js
  
   if request.xhr?
  respond_to{|format| format.js}
  else
  	redirect_to_index
  end	
   

  
分享到:
评论

相关推荐

    《Ruby on Rails Web开发学习实录》

    全书共分17章,主要内容包括:搭建ruby on rails开发平台、ruby语言的基础知识(像控制语句、面向对象、数组和块等)、文件处理、数据库持久化、rails控制器和路由、视图模板以及发送邮件和ajax等。 《ruby on rails ...

    Beginning Ruby on Rails

    Ruby on Rails is the revolutionary online programming tool that makes creating functional e-commerce web sites faster and easier than ever. With the intuitive, straightforward nature of Ruby and the ...

    Ajax-rails-ajax-demo.zip

    Ajax-rails-ajax-demo.zip,ruby on rails的ajax演示项目,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新加载网页的...

    Ajax on Rails

    Learn to build dynamic, interactive web applications using the two most important approaches to web development today: Ajax and the phenomenally efficient Ruby on Rails platform. This book teaches ...

    jquery-treetable-ajax-example:带有 D&D 支持的 AJAXified jQuery treeTable 表的 Ruby on Rails 示例

    它在服务器端使用 Ruby on Rails 和 SQLite。 文件 app/views/nodes/index.html.erb 包含有趣的 Javascript 位。 当节点扩展时,它使用 jQuery.ajax 函数下载远程节点。 当节点在分支之间移动 (D&D) 时,它还使用 ...

    使用Ruby on Rails开发LBS网站初探示例代码

    这几天一直在学习使用RoR(Ruby on Rails),想建立一个功能全面一点的LBS(Location Based Service)网站。但是对于我这个RoR的初学者(仅有几天时间)来说,毕竟太复杂了。因此本文试图简化原来的设计思路,抛弃一切...

    在Ruby on Rails中使用AJAX的教程

    主要介绍了在Ruby on Rails中使用AJAX的教程,文章来自于IBM官方网站技术文档,需要的朋友可以参考下

    rails-ranger::cowboy_hat_face:坚定的Ruby on Rails API的AJAX客户端

    护林员探索Ruby on Rails API的路由和路径| Rails Ranger是之上的薄薄一层,它为您提供了一个自以为是的界面,以查询使用Ruby on Rails构建的API。主要特点遵循Ruby on Rails路由约定的URL构建在前端和API之间交换...

    Agile Web Development With Ruby On Rails

    Agile Web Development With Ruby On Rails

    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 部分,本资源是第一部分;第二部分下载...

    Ruby_on_Rails_Web_开发之旅[清晰文字pdf].part1

    本书从Ruby和Rails的历史讲起,以在Rails框架上克隆故事共享网站digg.com为例,详细讲述了Ruby和Rails的安装过程、框架组成部分、与AJAX和Web 2.0技术结合、安全措施、高级话题和扩展功能等。本书带领读者运用最新...

    Ruby.on.Rails.Enterprise.Application.Development

    Ruby.on.Rails.Enterprise.Application.Development

    curso-rails-feevale:Feevale 的 Ruby on Rails 课程

    #Feevale 的 Ruby on Rails 课程##Ruby历史安装语言(面向对象、块、模块和语法) 宝石交互式控制台 (irb) 元编程##Rails - 概述目前网络开发配置约定MVC ##Rails - 模型(ActiveRecord + ActiveModel) 迁移验证...

    get-started-with-ruby-on-rails:“ Ruby on Rails入门”课程的源代码

    Ruby on Rails是一个开放源代码框架,可让您快速轻松地构建Web应用程序。 这个框架的设计考虑了开发人员的生产力和幸福感。 使用Rails,您可以通过强大的约定,合理的默认值和大量的库来轻松创建Web应用程序。 如果...

    rails-react-auth:使用Ruby on Rails和React进行身份验证的样本应用程序

    使用Rails和React进行身份验证本教程显示了一个使用Ruby on Rails,React,React Router和JWT(JSON Web令牌)进行身份验证的示例。 它是使用以下命令创建的,该命令在Ruby on Rails中配置React: $ rails new ...

Global site tag (gtag.js) - Google Analytics