我现在已将部署我的应用程序部署到我的网站。在我的Development ENV
中,我有一个名为cities
的表格,其中包含47K个城市/记录。我如何seed
将所有这些城市Production ENV
添加到seed
。
我只想做一次cities
并且仅针对bin/standalone.conf
数据库。
答案 0 :(得分:0)
您可以使用诸如https://github.com/rroblak/seed_dump之类的gem来转储所选表格,然后在生产服务器上运行RAILS_ENV=production rake db:seed
以播种数据。
rake db:seed:dump MODELS=cities APPEND=true
看起来像是运行以将数据转储到种子文件中所需的命令。
否则,您可以将数据库表导出为MySQL转储并将其导入生产数据库。
答案 1 :(得分:0)
你说你只需要在生产中这样做一次,但通常是任何其他开发人员(或将来你自己)可能需要再次这样做,所以我真的会把它变成种子文件或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