Сообщение об ошибке Rails отображается локально, но не в Heroku

При отправке формы локально, которая также создает транзакцию Braintree, я могу отображать любые ошибки обработки Braintree. Переменные экземпляра Braintree хранятся в @result.

Сообщения об ошибках отображаются правильно локально

Сообщения об ошибках рендеринга должным образом

Это частичное _error_messages

<% if @result.try(:errors) %>
<%# if @result.errors.present? %>
  <div id="error_explanation">
    <div class="alert alert-danger">
      The form contains <%= pluralize(@result.errors.count, "error")     %>.
    </div>
    <ul>
    <% @result.errors.each do |error| %>
      <li><%= error.code %> <%= error.message %></li> <br>
    <% end #do %>
    </ul>
  </div>
<% end %>

Я использую @result.try(:errors), поскольку @result инициализируется только позже в действии контроллера.

Тот же код на Heroku отображает частичное поле сообщения об ошибке (шрифт и форматирование), но не содержит ошибок:

Сообщения об ошибках не отображаются должным образом на Heroku

Сообщения об ошибках не отображаются правильно

В журналах Heroku я подтвердил, что результат Брэйнтри вернул ошибку. Я не думаю, что это проблема Брейнтри, и код работает локально. Другие формы, представленные с ошибками, будут правильно отображать сообщения об ошибках в Heroku.

Есть идеи?

Спасибо

Дэвид

0 ответов

Другие вопросы по тегам