【发布时间】:2014-02-04 12:28:28
【问题描述】:
Change form input attribute 'name' to 'data-encrypted-name' 讨论 Django,但这个问题是关于 Rails 的。
我在 Rails 中创建了一个表单来使用 Braintree 处理信用卡付款。但是,加密不起作用,因为 Rails 将名称属性添加到表单中。根据Braintree Docs,我想用data-encrypted-name 属性替换名称属性。我该怎么做呢?
这个(嵌套的)表单助手:
<%= cc.text_field :number %>
..创建以下元素:
<input id="credit_card_number" name="credit_card[number]" size="30" type="text">
如何将name 替换为data-encrypted-name?
【问题讨论】:
-
任何以
data-开头的都是特定于程序员的扩展。你可能有一个 Django 应用程序,它使用 JavaScript 加密信用卡号,并在发送之前用加密版本替换名称和值。我以前做过信用卡,你不需要这个。如果您使用 HTTPS,并且如果您的用户小心使用他们的浏览器和计算机,那么您的号码是安全的。哦,另外,Braintree 的库和示例代码是业内最好的...... -
@Phlip,Braintree 文档说要使用
data-encrypted-name,我只是想在 Rails 表单中这样做。 braintreepayments.com/docs/ruby/guide/getting_paid#payment_form -
模型是什么样的?
-
cc.text_field :number, 'data-encrypted-name' => 'something' -
@JustusDannyEapen,技术上没有模型(用于信用卡交易),但我正在使用 Braintree-Rails-Gem 来假装有一个 github.com/lyang/braintree-rails
标签: html ruby-on-rails ruby-on-rails-3 forms braintree