由于安装的是最新版Rails3.2+Ruby1.93,和书中当时的Rails 3.0.5不太一样,学习例子中遇到一些问题,总结如下:
1.Routing Error
No route matches [GET] "/assets/depot.css"
No route matches [GET] "/assets/logo.png"
Try running rake routes for more information on available routes.
原因:是由于Rails3.1以后Asset Pipeline默认是开着的,这样helper生产的连接不是以前public/javascripts而是/assets/javascripts/,同理/images和/stylesheets.
http://guides.rubyonrails.org/layouts_and_rendering.html#asset-tag-helpers
引用
If you are using Rails with the Asset Pipeline enabled, this helper will generate a link to /assets/javascripts/ rather than public/javascripts which was used in earlier versions of Rails. This link is then served by the Sprockets gem, which was introduced in Rails 3.1.
而这时assets目录在这三个目录任何一个下面即可:app/assets, lib/assets or vendor/assets
http://guides.rubyonrails.org/asset_pipeline.html
引用
Pipeline assets can be placed inside an application in one of three locations: app/assets, lib/assets or vendor/assets.
解决:rubyform上有人答复推荐降低rails版本到3.0.5,这个算是个快的解决办法,但总觉得没解决问题,回头用新的开发还是会遇到。
其实可以很简答解决问题:
在app/assets下的对应目录加入相应的css,js,pic即可
C:\Ruby193\work\depot\app\assets 的目录
2012/03/13 13:52 <DIR> .
2012/03/13 13:52 <DIR> ..
2012/03/13 13:35 <DIR> images
2012/03/13 09:58 <DIR> javascripts
2012/03/13 13:52 <DIR> stylesheets
2.Ajax无渐变效果(Highlighting Changes)
error:Missing template line_items/create, application/create
原因:3.1以后变化
解决:
1.\app\views\layouts\application.html.erb
<%= javascript_include_tag :defaults %> to <%= javascript_include_tag "application" %>
2.app/views/line_items/create.js.rjs 成create.js.erb,并修改内容:
page.replace_html('cart', render(@cart))
page[:current_item].visual_effect :highlight,
:startcolor => "#88ff88",
:endcolor => "#114411"
改成
$('#cart').html("<%= escape_javascript(render(@cart)) %>");
$('#current_item').css({ 'background-color': "#88ff88" }).animate({ 'background-color': "#114411" }, 1000); //在jquery中animate不支持background-color,所以看不到变回去的动画效果,如果要实现得加载jquery.color.js,详情见官网api
3.隐藏提交订单后的提示信息(Iteration G1: Capturing an Order)
app/views/line_items/create.js.erb
page.select("#notice").each { |notice| notice.hide}
改成
$('#notice').hide();
4.well-paginate出错(Iteration G3: Pagination)
error:
NoMethodError: undefined method `paginate' for
原因:得
安装well-paginate,安装完后重启rails server才行
按官网:(
https://github.com/mislav/will_paginate/wiki/Installation)
在depot\Gemfile添加:
## Gemfile for Rails 3, Sinatra, or Merb
gem 'will_paginate'
然后:
bundle install
接着:
重启rails server
分享到:
相关推荐
《敏捷Web开发与Rails:程序指南 第四版》是一本深度探讨使用Ruby on Rails框架进行敏捷Web应用开发的专业书籍。本书旨在帮助开发者充分利用Rails 4的特性,提高开发效率,实现快速迭代和高质量的代码编写。 Rails是...
《Agile Web Development with Rails 4th - Final Edition》是一本深入探讨Rails 3.0.5框架的权威指南,该书在2011年3月发布,为当时的技术环境提供了详尽的实践指导。Rails 3.0.5是Ruby on Rails框架的一个重要里程...
《敏捷Web开发与Rails 4th Edition》是Rails框架领域内一本广受欢迎的教程书籍,其源代码提供了丰富的实例和实践案例,帮助开发者深入理解Rails 3的应用开发。本源码包包含了书中所讲解的各种示例项目的代码,是学习...
Agile Web Development with Rails (4th edition) .pdf
《Agile Web Development with Rails, 4th Edition》是一本专为希望利用Rails框架进行敏捷Web开发的开发者们设计的专业指南。本书深入浅出地介绍了Rails的核心概念、实践方法及应用场景,并通过丰富的示例来帮助读者...
### 敏捷Web开发与Rails框架(第四版) #### 核心知识点概览 《敏捷Web开发与Rails》第四版是一本深入介绍如何利用Ruby on Rails框架进行高效、灵活的Web应用开发的专业书籍。该书由多位业界资深人士共同编写完成...
《敏捷Web开发与Rails(第4版)》不仅是一本学习Rails的优秀教材,更是了解敏捷开发理念和实践的重要参考资料。无论你是Rails新手还是有经验的开发者,都能从中获得有价值的信息和启示。随着Rails框架的不断发展和...
### 敏捷Web开发与Rails 4th Edition (Rails 3.1)——全面解析 #### 核心知识点概述 《敏捷Web开发与Rails》第四版涵盖了最新的Rails 3.1版本,是一本旨在帮助开发者快速掌握Ruby on Rails框架的核心书籍。本书...
《Agile Web Development with Rails (4th edition)》是一本深受开发者欢迎的书籍,它深入介绍了如何使用Ruby on Rails框架进行敏捷的Web开发。这本书的源代码提供了丰富的实例和练习,帮助读者更好地理解和实践...
Ruby on Rails helps you produce high-quality, beautiful-looking web applications quickly. You concentrate on creating the application, and Rails takes care of the details. Tens of thousands of ...
( [应用Rails进行敏捷Web开发(第4版)].(Agile.Web.Development.with.Rails.4th.Edition).S.Ruby&D.Thomas&D.H.Hansson.原版
英文新版:Agile Web Development with Rails, 4th Edition(For Rails 3.1 & 3.2) 内容简介 《Web开发敏捷之道:应用Rails进行敏捷Web开发(第3版)》主要分为两大部分。在“构建应用程序”部分中,读者将看到一个完整...
该书的第四版,也被称为"Agile Web Development with Rails (4th edition)",是Ruby on Rails领域的经典之作,适合于初学者和经验丰富的开发者。 Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用...
《Agile Web Development with Rails 4th Edition》是Rails领域的经典之作,作者David A. Hansson,也就是Rails框架的创建者,深入浅出地介绍了如何使用Rails进行敏捷开发。书中涵盖了Rails的基础知识,如路由、控制...
“Agile Web Development with Rails, 4th Edition”这本书是学习Rails 3.1的绝佳资源,它详细讲解了如何使用这个版本进行敏捷开发。书中涵盖了从基础概念到高级技巧的各个方面,包括数据库设计、控制器、视图、模型...