0

在本地提交也创建 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 日志中确认 Braintree 结果确实返回了错误。我认为这不是 Braintree 问题,并且代码在本地运行良好。其他提交错误的表单将在 Heroku 上正确呈现错误消息。

有任何想法吗?

谢谢

大卫

4

0 回答 0