如何将回形针图像从开发放入生产中

时间:2013-10-02 21:39:27

标签: ruby-on-rails paperclip capistrano

我在本地计算机上创建了一个产品数据库,现在我需要将其放到生产服务器上。产品数据库已加载到生产中。但是,我似乎找不到将图像传送到生产服务器的方法。使用 capistrano / nginx / AWS

我需要以某种方式从我的本地开发服务器获取图像,这些图像存储在:

app_root/public/system

...进入生产环境的系统文件夹...

xxx.com/current/public/system

有办法做到这一点吗?

1 个答案:

答案 0 :(得分:2)

Paperclip依靠数据库来存储文件信息,因此复制和粘贴数据库记录并不容易。只要在文件系统中可以访问每个产品的图像,就可以使用Rails的种子来加载产品。例如:

# db/seeds.rb
products = Product.create([
    { name: "Shampoo",
      photo: File.open(File.join(Rails.root, 'public', 'images', 'products', 'shampoo.png'))
    },
    { name: "Conditioner",
      photo: File.open(File.join(Rails.root, 'public', 'images', 'products', 'conditioner.png'))
    },
  ])

然后在服务器上运行rake db:seed

Fwiw并非必须在seeds.rb文件中执行此操作 - 如果需要,您可以将上述内容粘贴到控制台窗口中。

相关问题