`
momoliu
  • 浏览: 25177 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

迭代式开发rails应用(一)

 
阅读更多

记录学习rails的过程。应用来自《web敏捷开发之道——应用rails进行敏捷web开发》

1. 创建app

rails new test-depot --skip-bundle

cd test-depot

bundle install --local

修改GemFile,添加gem 'thin'

 

2.创建数据库表product

./script/rails generate scaffold product title:string description:string image_url:string 

rake db:migrate

3.启动服务
./script/rails s thin -p 4567

通过http://127.0.0.1:4567/products进行访问。可以通过页面中提供的create表单操作数据库。
 
4.增量修改数据库表结构
为数据库表product添加一列price。
./script/rails generate migration add_column
invoke  active_record
create    db/migrate/20121210082608_add_column.rb
 修改db/migrate/20121210082608_add_column.rb
class AddColumn < ActiveRecord::Migration
  def up
    add_column :products,:price,:decimal,:precision=>8,:scale=>2,:default=>0
  end

  def down
    remove_column :products,:price
  end
end
 运行rake db:migrate 
==  AddColumn: migrating ======================================================
-- add_column(:products, :price, :decimal, {:default=>0, :precision=>8, :scale=>2})
   -> 0.0051s
==  AddColumn: migrated (0.0052s) =============================================
由于添加了price列,但views中却没有实时添加上该字段,需要修改以下文件:
_form.html.erb edit.html.erb  index.html.erb new.html.erb   show.html.erb
照着其他字段的方法添加上price字段。 
最后在app/models/product.rb添加上price字段。
5.添加数据验证。
修改app/models/product.rb如下:
class Product < ActiveRecord::Base
  attr_accessible :description, :image_url, :title,:price
  validates_presence_of :title,:description,:image_url
#  validates_numericality_of :price
  validates_uniqueness_of :title
  validates_length_of :title,:minimum => 10
  validate :price_must_be_at_least_a_cent
  validates_format_of :image_url,:with=>%r{\.(gif|png|jpg)$}i,:message=>"must be a URL ForGIF,JPG or PNG image"
  def price_must_be_at_least_a_cent
    errors.add(:price,"should be at least 0.01") if price.nil?||price < 0.01
  end
end
 6.访问4567/products并填写数据如下:


7.添加css和一些样式
在app/assets目录下,有对应的目录如下:
images      
javascripts
stylesheets
只需要在这些文件目录下添加上对应的图片、js代码或css就可以了。

添加上我们的样式之后


 
 附件为test-depot,为整个应用程序

  • 大小: 35.9 KB
  • 大小: 73.6 KB
分享到:
评论

相关推荐

    Web开发敏捷之道--应用Rails进行敏捷Web开发 之 Depot代码。

    综上所述,这个压缩包提供的Depot项目是一个典型的Rails应用实例,适合初学者了解Rails框架的基本结构和敏捷开发流程。通过研究源码,开发者可以学习到如何组织代码、设置数据库、编写控制器逻辑、创建视图模板以及...

    Ruby+on+Rails快速Web应用开发实战.pdf

    - **MySQL的介绍和安装**:文档提到了MySQL数据库,这是Rails应用中常用的一个关系型数据库管理系统。介绍了MySQL的下载地址`***`。 - **数据库配置**:在Rails中,数据库的配置通常涉及模型的生成,以及在配置文件...

    Web开发敏捷之道-应用Rails进行敏捷Web开发 pdf

    《Web开发敏捷之道——应用Rails进行敏捷Web开发》是一本深度探讨如何利用Ruby on Rails框架进行高效、敏捷的Web应用程序开发的专业书籍。该书涵盖了从初学者到高级开发者所需的各种知识,旨在帮助读者掌握敏捷开发...

    应用Rails进行REST开发

    - **ActiveResource**:这是一个用于客户端访问RESTful服务的库,使得Rails应用能够轻松地与其他RESTful服务进行交互。 总之,REST不仅仅是一种开发风格,更是一种设计理念,它提倡通过标准化的接口来构建灵活、可...

    应用Rails进行敏捷Web开发中文第三版

    《应用Rails进行敏捷Web开发》中文第三版是针对Ruby on Rails框架的一本详尽指南,主要聚焦于Rails 2.2.2版本。Ruby on Rails(简称Rails)是一款基于Ruby编程语言的开源Web应用程序框架,它遵循“Don't Repeat ...

    Ruby_on_Rails快速Web应用开发实战

    Ruby on Rails(简称RoR)是一种基于Ruby编程语言的开源框架,用于快速开发高效、优雅的Web应用程序。它遵循模型-视图-控制器(MVC)架构模式,强调DRY(Don't Repeat Yourself)原则,使得代码简洁且可重用性高。...

    《web开发敏捷之道 应用rails进行敏捷web开发》(第一版)的depot源代码

    10. **敏捷开发**:敏捷开发是一种迭代、增量的软件开发方法,强调灵活性和客户满意度,书中会介绍如何在Rails项目中应用敏捷实践,如持续集成、短迭代周期和用户故事。 通过研究和运行"depot"源代码,你可以亲身...

    使用Rails开发Facebook平台应用

    - **集成Facebook API**:详细讲解如何将Facebook API集成到Rails应用中,实现用户登录、数据同步等功能。 ##### 3. 成功策略:营销与优化 - **增长黑客**:分享关于如何利用增长黑客技巧增加应用用户数量的方法。...

    Ruby-GoOnRails使用Rails生成器来生成一个Golang应用

    `GoOnRails`旨在利用Rails的快速开发能力和Go的高性能,提供一个混合式的开发模式。通过这种方式,你可以充分利用两种语言的优势,为复杂的Web应用构建高效且易于维护的后端架构。 总的来说,`GoOnRails`是一个创新...

    应用rails进行敏捷web开发

    Rails,全称Ruby on Rails,是由David Heinemeier Hansson创建的一个开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,强调使用简洁的代码和DRY(Don't Repeat Yourself)原则,使得开发过程更加高效且...

    Ruby-这是一个在Rails应用程序中使用React并使用webpack的示例

    总结来说,这个示例展示了如何在Rails应用程序中有效地利用React进行前端开发,以及如何通过webpack进行模块管理和优化。这种混合开发模式结合了Rails的强大后端能力和React的高效前端渲染,为现代Web应用提供了强大...

    rails应用--导航栏实例工程

    总之,"rails应用--导航栏实例工程"是一个综合性的教程,涵盖了Rails开发中的多个关键环节:路由设置、控制器创建、视图渲染、模型定义、以及后台管理工具的使用。通过实践这个实例,开发者可以深入理解Rails的工作...

    Ruby-APITaster一种快速而简单的方法来可视化测试你的Rails应用API

    Ruby-APITaster是一款强大的工具,专为Rails应用的API测试和可视化设计。它使得开发者能够迅速地对API接口进行互动式测试,从而确保API的功能正确性和性能稳定性。这款工具的出现,极大地简化了API测试过程,提高了...

    web敏捷开发rails笔记

    - **增量式开发**: 逐步增加功能,每次迭代都交付可用的产品。 - **快速迭代**: 快速反馈和调整方向。 - **迭代A1**: 创建基本应用结构。 - **迭代A2**: 添加必要的字段。 - **迭代A3**: 逻辑验证。 - **迭代A4**: ...

    Ruby on Rails实例开发

    Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和可读性,同时强调“约定优于配置”的原则。在本实例开发中,我们将探讨如何...

Global site tag (gtag.js) - Google Analytics