我有两个模型的Rails App
post.rb
class Post < ActiveRecord::Base
# id :integer(11) not null, primary key
# title :text
# body :text
end
和post_dumps.rb
class PostDump < ActiveRecord::Base
# id :integer(11) not null, primary key
# dupm_file
mount_uploader :dupm_file, DumpUploader # sql file was uploaded
end
如何在PostDumpsController中创建这样的方法
class PostDumpsController < ApplicationController
def update_posts_from_dump
@dump = PostDump.find(params[:id])
Post.destroy_all
# run from root user in server
mysql -uroot -ppasswrord production_bd < @dump.dupm_file_url
end
end
答案 0 :(得分:0)
为什么不对这样的事情使用rake任务。使用位置 您的服务器,您可以从中将数据转储到数据库中。您 甚至可以使用cronjob安排它。
注意:我不知道确切的要求,为什么要这样做,但如果要做这种事情,那么上面提到的是一种更好的方法。