У меня есть встроенные платежи в мою заявку. Он сконфигурирован таким образом, чтобы пользователь мог ввести цену за элемент, который они хотят продать, в качестве десятичного числа на модели булавки. Когда цена вводится в форме, она отображается в виде доллара в представлении. Тем не менее, когда вы выбираете кнопку «Купить сейчас» для этого элемента, а мода «всплывает», она отображает цену в центах (т.е. я вводил «10.0» и отправляю ее так, чтобы она отображала «Цена $: 10.0, но когда я выбираю покупку сейчас Stripe интерпретирует его как центы и отображает «Pay $ .10» в способе оплаты полосой.) Сумма платежа по полосе
Я думал об изменении цены входа в центы для пользователей таким образом, чтобы Stripe мог интерпретировать ее лучше, но это привело бы к плохому интерфейсу .
есть ли простой способ исправить это так, что сумма отображается равномерна как для входа и выхода?
приложение/просмотров/контакты/
<%= form_tag charges_path, id: 'chargesForm' do %>
<script src="https://checkout.stripe.com/checkout.js"></script>
<%= hidden_field_tag 'stripeToken' %>
<%= hidden_field_tag 'stripeEmail' %>
<button id="btn-buy" type="button" class="btn btn-success btn-lg btn-block"><span class="glyphicon glyphicon-heart"></span> Buy Now!</button>
<script>
var handler = StripeCheckout.configure({
key: '<%= Rails.configuration.stripe[:publishable_key] %>',
token: function(token, arg) {
document.getElementById("stripeToken").value = token.id;
document.getElementById("stripeEmail").value = token.email;
document.getElementById("chargesForm").submit();
}
});
document.getElementById('btn-buy').addEventListener('click', function(e) {
handler.open({
name: <%= @pin.manufacturer %>',
description: '<%= @pin.description %>',
amount: '<%= @pin.price %>'
});
e.preventDefault();
})
</script>
<% end %>
приложение/просмотров/контакты/index.html.erb
<div id="pins" class="transitions-enabled">
<% @pins.each do |pin| %>
<div class="box panel panel-default">
<div class="panel-body">
<%= link_to (image_tag pin.image.url(:medium)), pin %>
<p></p>
<strong>Manufacturer:</strong>
<%= pin.manufacturer %>
<p></p>
<strong>Price:</strong>
<%= pin.price %>
<p></p>
<strong>Description:</strong>
<%= pin.description %>
<% if pin.is_multi? %>
<strong>Quantity:</strong>
<%= pin.quantity %>
<% end %>
<p></p>
приложение/дб/мигрировать
class AddPriceToPins < ActiveRecord::Migration
def change
add_column :pins, :price, :decimal
end
end
контактный/контроллер
class PinsController < ApplicationController
before_action :set_pin, only: [:show, :edit, :update, :destroy, :bid]
before_action :correct_user, only: [:edit, :update, :destroy]
before_action :authenticate_user!, except: [:index, :show]
def index
@pins = Pin.all.order("created_at DESC").paginate(:page => params[:page], :per_page => 9)
end
def pin_params
params.require(:pin).permit(:description, :price, :image, :image2, :image3, :image4, :image5, :manufacturer, :model)
end
end