Поддерживает ли Heroku `rails dbconsole`?
Я пытаюсь запустить rails dbconsole
на Heroku, но получаю следующую ошибку:
heroku run rails dbconsole
# => Couldn't find database client: psql. Check your $PATH and try again
Можно ли использовать dbconsole на Heroku? Если нет другого клиента, который может быть использован?
Ответы
Ответ 1
https://devcenter.heroku.com/articles/heroku-postgresql - "У вас должен быть установлен PostgreSQL в вашей системе для использования heroku pg: psql". Возможно, вам не хватает PostgreSQL на вашем компьютере. Если это не так, попробуйте эту другую команду, чтобы перейти к консоли Postgres:
heroku pg:psql
"psql - это собственный интерактивный терминал PostgreSQL и используется для выполнения запросов и выдачи команд подключенной базе данных.
Ответ 2
Я думаю, heroku-sql-console должен предоставлять аналогичную функциональность, но когда я попытался запустить его, я получил эту ошибку:
undefined local variable or method `app' for # (NameError)
Он был сообщен как ошибка, но нет исправления или обходного пути.
Обновление. Как указывает @Alban, исправление этой проблемы заключается в обновлении клиента. Для этого мне нужно было выполнить gem update heroku
.
Ответ 3
Как говорит Люк, вы можете использовать heroku-sql-console. Но сначала убедитесь, что вы используете последний клиент герою:
> heroku update
Ответ 4
Можно ли использовать dbconsole на Heroku? Если нет другого клиента, который может быть использован?
Вы можете использовать онлайн-клиент базы данных, если используете activeadmin
.
Просто добавьте драгоценный камень activeadmin-sqlpage:
gem 'activeadmin-sqlpage'
Создайте страницу activeadmin:
# file app/admin/sql.rb
ActiveAdmin::SqlPage::register
Перезагрузите сервер. Затем перейдите на панель администратора и перейдите в меню SQL
. Введите любую команду sql и нажмите кнопку Ctrl+Enter
или Submit
.