gpt4 book ai didi

ruby-on-rails - 如何从 Rails 中的 float 中去除小数点

转载 作者:行者123 更新时间:2023-12-02 04:25:19 25 4
gpt4 key购买 nike

我想在将价格发送到表单/ strip 之前去掉价格中的小数点。我可以使用其他方法来执行此操作吗?

在我的product.rb模型中,我有:

def monetize_amount
self.price.to_s.delete(".").to_f
end

在费用 Controller 中我有:

def create
@product = Product.find(params[:id])
# Amount in cents
**@amount = @product.monetize_amount**

customer = Stripe::Customer.create(
:email => '<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="701508111d001c15300304021900155e131f1d" rel="noreferrer noopener nofollow">[email protected]</a>',
:card => params[:stripeToken]
)

charge = Stripe::Charge.create(
:customer => customer.id,
:amount => @amount,
:description => 'Rails Stripe customer',
:currency => 'usd'
)

rescue Stripe::CardError => e
flash[:error] = e.message
redirect_to charges_path
end

最佳答案

就像argentum47所说的那样。将其转换为以分为单位的整数值。

class Product < AR::Base
def price_in_cents
(price * 100).to_i
end
end

然后你可以这样做:

charge = Stripe::Charge.create(
:customer => customer.id,
:amount => @product.price_in_cents,
#…

关于ruby-on-rails - 如何从 Rails 中的 float 中去除小数点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27518358/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com