鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > 编程语言开发 > ruby > >

Rails Migration 备忘录

来源:互联网 作者:佚名 时间:2012-11-22 14:53
Migration命名 1、文件名的格式为: YYYYMMDDHHMMSS_create_products.rb 前面YYYYMMDDHHMMSS部分为UTC时间戳。 2、类名遵循驼峰式命名格式 如:CreateProducts 3、类名与文件名的后半部分保持一致 如果修改文件名,则必须修改文件中的类名,否则会报 missing

Migration命名

1、文件名的格式为:

YYYYMMDDHHMMSS_create_products.rb

前面“YYYYMMDDHHMMSS”部分为UTC时间戳。

2、类名遵循驼峰式命名格式

如:CreateProducts

3、类名与文件名的后半部分保持一致

如果修改文件名,则必须修改文件中的类名,香港服务器,否则会报 missing class 的错误。

例如

文件名: 20080906120000_create_products.rb

对应类名:CreateProducts

文件名:20080906120001_add_details_to_products.rb

对应类名:AddDetailsToProducts

 

Migration任务总结

1、建立数据表:create_table

常配合使用方法为:add_column

例如: create_table :suppliers add_column :suppliers, :name, :string, {:limit => 60}

比较sexy的写法                                

create_table :suppliers do |t|  

        t.string :name,

end

2、变更数据表:change_table

常配合使用的方法为:

add_column  对应sexy写法:t.column 或者 t.string(integer...)

change_column

remove_column  对应sexy写法:t.remove

rename_column

change_column_default

 

add_index  对应sexy写法:t.index

remove_index  对应sexy写法:t.remove_index

rename_index

 

add_timestamps

remove_timestamps

 

3、重命名数据表:rename_table

 

Rake任务总结

1、单纯地执行所有还未执行的迁移任务中的up(或是change中的up)方法

rake db:migrate

指定版本:

rake db:migrate VERSION=20080906120000 

2、执行最后一个迁移任务的down方法

rake db:rollback

指定最后几步的迁移任务,默认为最后一个:

rake db:rollback STEP=3 

3、执行一个指定的migration的up或down方法,香港空间,需指定版本号

rake db:migrate:up VERSION=20080906120000

rake db:migrate:down VERSION=20080906120000

它会首先确认这个migration之前有没有跑过,如果Active Record认为20080906120000已经跑过,那么执行 db:migrate:up VERSION=20080906120000将不会做任何操作。

美国服务器
网友评论
<