rails 3 generate scaffold

一个可能要知道model的数据格式都支持什么
可以支持的数据类型

一个是如果要是创建完了,发现不满意怎么办呢

例如,运行如下:
Ruby代码   收藏代码
  1. rails g scaffold task project_id:integer name:string  


我的话,第一想到的是git checkout或者git reset
实际上,用如下更合适

Ruby代码   收藏代码
  1. rails destroy scaffold task  


那么,要是生成了scaffold并且,用了一段了时间了呢

可以先把数据库版本退回来
Ruby代码   收藏代码
  1. rake db:rollback STEP=3  


当然,通常有数据就不建议rollback了,就要

就要
Ruby代码   收藏代码
  1. rails generate migration AddPartNumberToProducts part_number:string  

Ruby代码   收藏代码
  1. class AddPartNumberToProducts < ActiveRecord::Migration  
  2.   def self.up  
  3.     add_column :products:part_number:string  
  4.   end  
  5.    
  6.   def self.down  
  7.     remove_column :products:part_number  
  8.   end  
  9. end  


Ruby代码   收藏代码
  1. rails generate migration RemovePartNumberFromProducts part_number:string  
Ruby代码   收藏代码
  1. class RemovePartNumberFromProducts < ActiveRecord::Migration  
  2.   def self.up  
  3.     remove_column :products:part_number  
  4.   end  
  5.    
  6.   def self.down  
  7.     add_column :products:part_number:string  
  8.   end  
  9. end  


Ruby代码   收藏代码
  1. class ExampleMigration < ActiveRecord::Migration  
  2.    
  3.   def self.up  
  4.     create_table :products do |t|  
  5.       t.references :category  
  6.     end  
  7.     #add a foreign key  
  8.     execute <<-SQL  
  9.       ALTER TABLE products  
  10.         ADD CONSTRAINT fk_products_categories  
  11.         FOREIGN KEY (category_id)  
  12.         REFERENCES categories(id)  
  13.     SQL  
  14.    
  15.     add_column :users:home_page_url:string  
  16.    
  17.     rename_column :users:email:email_address  
  18.   end  
  19.    
  20.   def self.down  
  21.     rename_column :users:email_address:email  
  22.     remove_column :users:home_page_url  
  23.     execute "ALTER TABLE products DROP FOREIGN KEY fk_products_categories"  
  24.     drop_table :products  
  25.   end  
  26. end  


转自:http://hlee.iteye.com/blog/1073636

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值