Rails'rake db:seed'不工作

时间:2015-07-22 18:20:52

标签: ruby-on-rails ruby

在尝试完成'rake db:reset'命令时,我收到此错误

remquo()

我在这里检查了其他几个关于这个问题的帖子,但似乎找不到任何有用的东西。这是所有本地托管,所以我不认为我需要做任何与Heroku。

在错误指向的seeds.rb文件中,我甚至没有包含单词bucket,在我的development.rb文件中,我的回形针默认值如下:

rake aborted!
ArgumentError: missing required :bucket option

我已经尝试从s3凭据中移除桶线,但是我得到了同样的错误。任何帮助表示赞赏。

编辑:这是我的种子文件中错误点的区域,整个文件非常大

config.paperclip_defaults = {
:storage => :s3,
:s3_credentials => {
  :bucket => ENV['XXX_DEV_S3_BUCKET'],
  :url => ENV['XXX_DEV_S3_URL'],
  :access_key_id => ENV['S3_ACCESS_KEY_ID'],
  :secret_access_key => ENV['S3_SECRET_ACCESS_KEY'],
}
}

错误指向以“parents”开头的行

2 个答案:

答案 0 :(得分:0)

你可以试试这个:

Paperclip::Attachment.default_options.merge!({
  :storage => :s3,
  :s3_credentials => {
    :bucket => ENV['XXX_DEV_S3_BUCKET'],
    :access_key_id => ENV['S3_ACCESS_KEY_ID'],
    :secret_access_key => ENV['S3_SECRET_ACCESS_KEY'],
  },
 :url => ENV['XXX_DEV_S3_URL'],
 :path => "/:class/:attachment/:id_partition/:style/:filename"
})

答案 1 :(得分:0)

S3存储桶配置为使用ENV['XXX_DEV_S3_BUCKET']

我猜你没有设置环境变量。

检查项目中是否有名为.env.env.developmentapplication.yml的文件。

dotenvFigaro使用这些文件来管理环境变量。

如果这是Heroku应用程序,您可能还需要检查heroku config以查看是否设置了值。

否则,您可能需要使用上述工具之一自行传递它们,或者将它们直接传递到命令行中,如下所示:

XXX_DEV_S3_BUCKET=xxx-production S3_ACCESS_KEY_ID=1823123412 S3_SECRET_ACCESS_KEY=blahblahblah bin/rake db:seed