【发布时间】:2016-03-17 07:40:49
【问题描述】:
我有下面的示例参数:
Parameters: {
"utf8"=>"✓",
"authenticity_token"=>"xxxxxxxxxx",
"post" => {
"product_attributes" => {
"name"=>"Ruby",
"product_dtls_attributes" => {
"0"=>{"price"=>"12,333.00"},
"1"=>{"price"=>"111,111.00"}
},
},
"content"=>"Some contents here."
}
现在的情况是,我无法在model 中获得price 的确切值。
代替:
- 价格 = 12,333.00
- 价格 = 111,111.00
我明白了:
- 价格 = 12.00
- 价格 = 11.00
现在这是我在代码中所做的:
before_validation(on: :create) do
puts "price = #{self.price}" # I also tried self.price.to_s, but didn't work.
end
更新:
(我在这里尝试获取full value 并去掉逗号)。
before_validation(on: :create) do
puts "price = #{self.price.delete(',').to_f}" # I also tried self.price.to_s, but didn't work.
end
注意:
price 列是浮动的
问题是,我怎样才能得到参数price 的确切值。
谢谢!
【问题讨论】:
-
@VtrKanna,我正在尝试获取整个值而不是四舍五入之类的。但是,那谢谢。
-
不,你没有得到我想要做的。它不在解析中。它正在获得
price的全部价值。 -
您是否尝试过在控制器中获取准确的值并将参数传递给您的模型?
标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 activerecord