나는 을 배포했습니다. 내 웹 사이트에 지금 내 응용 프로그램이 있습니다. 내 Development ENV
에는 cities
이라는 테이블이 있으며 47K 개의 도시/레코드가 있습니다. 이 도시들을 모두 내 으로 어떻게 seed
할 수 있습니까?Ruby on Rails - 개발 데이터베이스에서 시드
나는 단지 seed
과 cities
데이터베이스에 대해서 한 번만 생각하고 있습니다.
나는 을 배포했습니다. 내 웹 사이트에 지금 내 응용 프로그램이 있습니다. 내 Development ENV
에는 cities
이라는 테이블이 있으며 47K 개의 도시/레코드가 있습니다. 이 도시들을 모두 내 으로 어떻게 seed
할 수 있습니까?Ruby on Rails - 개발 데이터베이스에서 시드
나는 단지 seed
과 cities
데이터베이스에 대해서 한 번만 생각하고 있습니다.
https://github.com/rroblak/seed_dump과 같은 보석을 사용하여 선택한 테이블을 덤프 한 다음 프로덕션 서버에서 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
감사합니다. @ pinny87 – Rubioli