2014-12-17 4 views
0

Я использую pgcrypto gem для шифрования данных в определенных столбцах базы данных, но для того, чтобы этот камень работал, я должен указать pgcrypto в качестве адаптера в файле database.yml. Я знаю, что Heroku игнорирует этот файл и генерирует его, когда приложение переносится на сервер Heroku, который использует адаптер по умолчанию postgresql. Кто-нибудь знает, возможно ли переопределить значение adapter с переменной конфигурации, например?указать адаптер базы данных на Heroku

ответ

1

В конце концов нашел решение, которое случилось быть довольно просто один - я просто должен был заменить первый маркер в переменной URL базы данных в Heroku, поэтому вместо

postgres://username:[email protected]:port/dbname

Я использую

pgcrypto://username:[email protected]:port/dbname

0

Вы можете вручную создать соединение с базой данных с

`ActiveRecord::Base.establish_connection(config) 

вы также можете сделать это на основе за модель с использованием смешивания.

Больше информации здесь Understanding how establish_connection works in ActiveRecord

+0

Спасибо за ответ. Я подумал об этом, но на самом деле не хотел указывать все свойства соединения для каждой модели, так как меня беспокоил только один конкретный параметр - адаптер. – koss