`
xiaoyu5256
  • 浏览: 8255 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

读书摘录--Web开发敏捷之道-应用Rails进行敏捷Web开发

阅读更多

 

1.下载sqlite3,网址http://www.sqlite.org/download.html

2.将sqlite3文件拷贝到ruby的bin目录下

3.执行  gem install sqlite3-ruby或

在sqlite3-ruby-1.2.3-mswin32.gem所在目录下执行gem install -l  sqlite3-ruby-1.2.3-mswin32.gem安装驱动

 

 

命令:

新建一个应用

rails depot

 

新建一个数据库配置文件mysql类型的应用:

rails --database=mysql depot

 

生成完整的增删改程序

ruby script/generate scaffold product title:string description:text image_url:string

 

如何修改一个字段?

 

移除生成的一段程序

ruby script/destroy scaffold product

 

生成数据库

rake db:create RAILS_ENV=development

 

迁移数据库

rake db:migrate

 

运行服务器

ruby script/server

以开发模式运行服务器

ruby script/server --environment=development

 

添加一个字段

ruby script/generate migration add_price_to_product price:decimal

 

添加数据

ruby script/generate migration add_test_data

 

 

验证model:

validates_presence_of :title,:description,:image_url 验证非空

validates_numericality_of  :price 验证数字

validates_uniqueness_of :title 验证唯一

validates_length_of :title, :in=> 10..15 验证长度

 

 验证图片url格式

validates_format_of :image_url,

                    :with => %r{\.(gif|jpg|png)$}i,

                    :message => 'must be a URL for GIF, JPG or PNG image.'

 

自定义验证方法

validate :price_must_be_at_least_a_cent

protected

def price_must_be_at_least_a_cent

 errors.add(:price, 'should be at least 0.01' ) if price.nil? || price < 0.01

end

 

生成一个controller,其中含有一个index的action

ruby script/generate controller store index

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics