Rails избегают записи атрибута вложенного объекта в лог - PullRequest
1 голос
/ 22 февраля 2010

Как я могу запретить определенному параметру вложенных отношений в рельсах войти в файл журнала - я записываю БОЛЬШИЕ файлы в столбец в БД и не хочу, чтобы рельсы записали это в файл журнала ... Я знаю из filter_parameter_logging , но, похоже, он не работает для вложенных моделей - возможно, я просто не в том месте?

1 Ответ

2 голосов
/ 22 февраля 2010

В соответствии с кодом Rails это должно работать даже для вложенных хэшей параметров. Вы можете реализовать метод filter_parameters на вашем контроллере, чтобы обойти вашу проблему. Прочитайте эту ветку для более подробной информации. Для вашего удобства я разместил код из ветки выше.

  def filter_parameters(unfiltered)
    return unfiltered unless params[:action]  == 'payment'
    filtered = unfiltered.dup
    filtered[:creditcard] = unfiltered[:creditcard].dup
    filtered[:creditcard][:number] = '[FILTERED]'
    filtered[:creditcard][:type] = '[FILTERED]'
    filtered
  end
...