Я использую Spree 3.1. Чтобы использовать Heroku, мне нужны снимки магазина AWS S3 tp. Потрачено так много времени с помощью KeyError как местного, так и Heroku.`fetch ': ключ не найден:« S3_BUCKET_NAME »(KeyError)
2
A
ответ
2
И хотел бы поделиться здесь:
В AWS S3 документа для создания IAM пользователя для ID и access_key_id и secret_access_key. Чтобы он работал, мне нужно создать профиль и установить разрешение администратора.
паста только это потребности окружающей среды, например: конфигурации/сред/production.rb и development.rb
config.paperclip_defaults = { storage: :s3, s3_credentials: { bucket: ENV.fetch('S3_BUCKET_NAME'), access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID'), secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY'), s3_region: ENV.fetch('AWS_REGION'), } }
Не заменять значение. Вместо Для Heroku:
heroku config:set S3_BUCKET_NAME=your-bucket-name AWS_ACCESS_KEY_ID=your-access-key-id AWS_SECRET_ACCESS_KEY=your-secret-access-key AWS_REGION=your-region
И для местных: Добавляем значения в .env
$ cat .env
S3_BUCKET_NAME=your-bucket-name-development
AWS_ACCESS_KEY_ID=your-access-key-id
AWS_SECRET_ACCESS_KEY=your-secret-access-key
не "кавычки" эти значения
пожалуйста объединить эту часть в ваше вопрос. – mootmoot
где находится этот .env файл? –
. .env файл находится в корне проекта (где находится Gemfile) –