Есть ли какой-либо способ экспортировать AR-таблицу в вызовы методов?

#ruby-on-rails #activerecord

#ruby-on-rails #activerecord

Вопрос:

У меня есть некоторые данные в AR-таблице, которые я вставил вручную через свое приложение, но я хотел бы экспортировать их в виде набора model.create!(...) инструкций (другими словами, мне нужен файл вызовов методов для воссоздания базы данных как есть), есть ли способ сделать это автоматически (через консоль, rake и т.д.)?

Ответ №1:

Возможно, вы сможете что-то сделать с помощью простого взлома, подобного этому:

 User.all.each do |user|
  puts "User.create!(YAML.load(<<END))n#{user.attributes.to_yaml}nEND"
end
  

Вы можете генерировать с помощью rails runner :

 rails runner user_export.rb >> db/seeds.rb