Подтвердить что ты не робот

Как изменить DATABASE_URL для приложения heroku

Я хотел использовать внешнюю базу данных с моим приложением heroku. Но я не могу отредактировать конфигурацию cariables. Я попытался с помощью графического интерфейса, который говорит, не может перезаписать значения вложения DATABASE_URL. Хотя я тоже пытался использовать CLI. Я использовал команду: heroku config:addDATABASE_URL="postgresql://username:[email protected]:PORT". Однако это выдает ошибку ... is not a heroku command.

4b9b3361

Ответ 1

После опроса большинства этих ответов я встретил обновление в 2016 году, здесь: сначала необходимо отделить базу данных, а затем обновить переменную DATABASE_URL.

heroku addons:attach heroku-postgresql -a <app_name> --as HEROKU_DATABASE
heroku addons:detach DATABASE -a <app_name>
heroku config:add DATABASE_URL=

Ответ 2

Альтернативный метод, который не требует отсоединения (что может быть нежелательным результатом переключения), состоит в том, чтобы просто присоединить новую базу данных и затем продвинуть ее, что в Документах Heroku прямо указано как способ установки DATABASE_URL.

heroku addons:attach heroku-postgresql -a <app_name>
heroku pg:promote heroku-postgresql -a <app_name>

Ответ 3

Как описанный в этой статье, правильный синтаксис для установки/добавления переменной конфигурации -

$ heroku config:set DATABASE_URL="postgresql://username:[email protected]:PORT"

Однако, похоже (см. комментарии), DATABASE_URL устарел, и попытка его обновления приведет к ошибке.

Ответ 4

Я получил ту же самую ситуацию, когда мне нужно изменить postgres на postgis. Отключение не работает для меня, поэтому я сделал это с database.yml:

production:

  url: <%= ENV['DATABASE_URL'].sub(/^postgres/, "postgis") %>

https://github.com/rgeo/activerecord-postgis-adapter/issues/214.

Ответ 5

Решил. Только для справки пользователей, которые имеют одну и ту же проблему или хотят иметь аналогичную реализацию. Здесь обходной путь, который работал у меня.

Heroku больше не перезаписывает databse.yml, поэтому я только что изменил DATBASE_URL в database.yml и нажал его:)

Он тоже работает!

Источник: https://discussion.heroku.com/t/rails-4-1-database-yml-no-longer-overwritten-on-heroku/550

Ответ 6

На основе документов Heroku вы можете использовать базу данных для нескольких приложений.

heroku addons:attach my-originating-app::DATABASE --app sushi