综合二区_欧美成人综合_欧美成人二区_a黄视频_亚洲视频在线播放_一区二区三区视频免费看

当前位置:首页 > 网站旧栏目 > 学习园地 > 设计软件教程 > 每天一剂Rails良药之Safely Use Models in Migrations

每天一剂Rails良药之Safely Use Models in Migrations
2010-01-14 07:03:16  作者:  来源:
我们平时做Migrations时除了更改schema,还经常需要更改data
但我们以前的Migrations可能不工作,因为data之间可能有依赖关系
我们可以通过在Migrations里定义Model来解决该问题:
Java代码 复制代码
  1. class AddPositionToProducts < ActiveRecord::Migration   
  2.   class Product < ActiveRecord::Base; end   
  3.   class SoftwareProduct < Product; end   
  4.   class CourseProduct < Product; end   
  5.   
  6.   def self.up   
  7.     add_column :products, :position, :integer   
  8.     Product.reset_column_information   
  9.     SoftwareProduct.find(:all).inject(0do |i, p|   
  10.       p.update_attribute(:position, i)   
  11.        i+1  
  12.     end   
  13.     CourseProduct.find(:all).inject(0do |i, p|   
  14.       p.update_attribute(:position, i)   
  15.       i+1  
  16.     end   
  17.   end   
  18.   
  19.   def self.down   
  20.     remove_column :products, :position   
  21.   end   
  22. end  

这里我们在Migration里面定义Model,相当于给Model加了一个名字空间AddPositionToProducts::Product,这就能保证该Model在你的migrations里是唯一的

安徽新华电脑学校专业职业规划师为你提供更多帮助【在线咨询
主站蜘蛛池模板: 亚洲涩色 | 9191在线观看| 91亚洲成人| 91视频社区 | 亚洲在线免费 | 一区二区三区久久 | 亚洲精品美女在线观看 | 91免费视频在线 | 91精品大片| 日韩精品视频专区 | 一区二区三区免费视频网站 | 偷拍第1页 | 免费人成网 | 91www视频| 嫩草懂你的 | 久久久精品久久 | 91成人短视频在线观看 | 成年免费视频 | 91视频最新网站 | 91视频免费在线观看 | 亚洲精品菠萝久久久久久久 | 91视频在线免费观看 | 中国女人内谢69xxxx | 亚洲免费福利视频 | 91视频网址入口 | 91视频最新网站 | 国产一区二区三区在线免费 | 国产一级片免费观看 | 91传媒在线观看 | 天天爽夜夜爽人人爽一区二区 | 成人a视频片观看免费 | 99热综合| www.日本在线视频 | 91国产免费视频 | 九九热九九 | 91国内直播在线观看 | 97操碰| 91免费在线电影 | 伊人色私人影院蜜桃va | 91文字幕巨乱亚洲香蕉 | 美女禁网站 |