[英]Ruby on Rails - seed from development database
我现在已经将应用程序部署到我的网站上。 在我的Development ENV
,我有一个表叫cities
,并包含47K城市/记录。 如何将所有这些城市seed
到我的Production ENV
。
我只是想做一次seed
并且只针对cities
数据库。
您可以使用诸如https://github.com/rroblak/seed_dump之类的gem转储所选表,然后在生产服务器上运行RAILS_ENV=production rake db:seed
来播种数据。
rake db:seed:dump MODELS=cities APPEND=true
看起来像您需要运行以将数据转储到种子文件中的命令。
否则,您可以将数据库表导出为MySQL转储并将其导入生产数据库中。
您说您只需要在生产中执行一次此操作,但是通常这是任何其他开发人员(或将来您自己)都可能需要再次执行的操作,因此我真的会将其转换为种子文件或CSV。
您可以按照以下方法创建CSV,然后将其导入生产环境。
require 'csv'
attributes = %w{name country}
CSV.open('cities.csv','w') do |csv|
csv << attributes
City.find_each do |city|
csv << attributes.map{ |attr| city.send(attr) }
end
end
end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.