javascript - 如何在 Backbone View 中访问 Rails 配置信息?

标签 javascript ruby-on-rails backbone.js stripe-payments

我正在尝试将 Stripe 实现到具有 Backbone 前端的 Rails 应用程序中。

在普通的 Rails View 中,我可以这样做:

<%= form_tag charges_path do %>
  <article>
    <label class="amount">
      <span>Amount: $5.00</span>
    </label>
  </article>

  <script src="https://checkout.stripe.com/checkout.js" class="stripe-button"
          data-key="<%= Rails.configuration.stripe[:publishable_key] %>"
          data-description="Launch Survey"
          data-amount="<%= @amount %>"></script>
<% end %>

单击按钮后,它将触发 Stripe 表单以输入信用卡信息。

我想将其转换为 Backbone View ,特别是在 jst.eco 模板中。我想知道将 Rails.configuration.stripe[:publishable_key] 从我的服务器获取到我的 View 的最佳方法是什么?

通常对于这样的事情,我只会创建一个 cookie,但是对于这种类型的付款相关信息来说,这似乎并不安全。

谢谢!

最佳答案

我们可以通过 application.html.erb 将此配置值存储在 Javascript 中,将此脚本包含在 applcation.html.erb 中

<script type="text/javascript">
    App.Util.key = "<%= Rails.configuration.stripe[:publishable_key] %>";
</script>

现在你可以在 JS 中使用这个键了。

关于javascript - 如何在 Backbone View 中访问 Rails 配置信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30767705/

相关文章:

javascript - MIME 类型的文件扩展名

javascript - Rails text_field 默认值在点击时消失(并变暗)

ruby-on-rails - 根据多个条件中的任何一个过滤 Ruby 对象数组?

javascript - 了解 Marionette for Backbone.js 中的布局

javascript - Promise.all 具有不同的返回类型

javascript - 如何让 chrome.webRequest.onBeforeRequest.addListener() 在 Chrome 启动时触发?

ruby-on-rails - Ruby on Rails 4 : How to authenticate to Azure AD from Rails Application?

javascript - 是否有用于 backbone.js 等的用于 javascript 的现代/轻量级布局库?

javascript - 使用 POST 请求获取集合?

javascript - 如何在 React.js 中对数据对象数组进行排序