在开发机 (Mysql) 上有些表里的数据直接可以用在生产机 (Heroku Postgresql) 上,但把数据导出到 seed.rb 的方法不是对所有的 Model 都有效。
比如说如果用这个 Gem: https://github.com/rroblak/seed_dump 产生这样的数据:
Product.create!([
{category_id: 1, description: "Long Sleeve Shirt", name: "Long Sleeve Shirt"},
{category_id: 3, description: "Plain White Tee Shirt", name: "Plain T-Shirt"}
])
User.create!([
{id: 1, password: "123456", username: "test_1"},
{id: 2, password: "234567", username: "test_2"}
])
这种方法一般来说是够用的,但有的 Model 不是所有的字段都可用的, 比如说这个 Gem https://github.com/collectiveidea/awesome_nested_set
其中的 lft, rgt 字段是 Gem 来管理的,不允许直接赋值。
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
简单来说我的问题: 在 seed.rb 里面的操作基本上都是封装 (类方法) 了,有没有原始的数据迁移方案?比如说上传个 SQL 文件,直接 rake 在生产机上搞定?