rails 3.0 шифрование денежный ящик - PullRequest
1 голос
/ 11 июня 2011

В контексте проекта rails 3.0 поле базы данных должно быть зашифровано.gem Strongbox используется для управления шифрованием.Реализация следует readme на github (см. Ссылку).Проблема в том, что представление выдает ошибку:

invalid byte sequence in UTF-8

для <%= f.text_field :my_field %>

Что нужно сделать, чтобы расшифровать поле в представлении?

1 Ответ

2 голосов
/ 27 июня 2011

Документация для Strongbox гласит: «В ваших представлениях и формах вам не нужно делать ничего особенного для шифрования данных. Чтобы расшифровать вызов: user.secret.decrypt 'password'"

Конструктор форм Rails не вызывает decrypt для значения при генерации формы, поэтому вы получите эту ошибку. У вас есть две альтернативы:

  • Установите значение text_field вручную для всех зашифрованных полей, например,

    '<% = f.text_field: my_field,: value => user.my_field.decrypt "password"%>'

  • Создайте собственный генератор форм, который расшифровывает зашифрованные значения при создании формы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...