当 MRP 大于 999 时,MRP 价格字段值除以 1000,同时更新 Spree (ROR) 中的值
MRP price field value gets divided by 1000 when MRP is greater than 999 while updating the value in Spree (ROR)
我已经在产品和变体模板中添加了一个 MRP 字段,但问题是如果我第二次更新并且如果 MRP 大于 999 意味着 1000 它被除以千并在场地。我该如何解决这个问题。
class AddMrpToVariant < ActiveRecord::Migration
def self.up
add_column :spree_variants, :mrp_price, :decimal, precision: 10, scale: 2
end
def self.down
remove_column :spree_variants, :mrp_price
end
end
通过将以下代码添加到模型中解决了该问题。
%w(mrp_price).each do |m|
define_method("#{m}=") do |argument|
self[m] = Spree::LocalizedNumber.parse(argument) if argument.present?
end
我已经在产品和变体模板中添加了一个 MRP 字段,但问题是如果我第二次更新并且如果 MRP 大于 999 意味着 1000 它被除以千并在场地。我该如何解决这个问题。
class AddMrpToVariant < ActiveRecord::Migration
def self.up
add_column :spree_variants, :mrp_price, :decimal, precision: 10, scale: 2
end
def self.down
remove_column :spree_variants, :mrp_price
end
end
通过将以下代码添加到模型中解决了该问题。
%w(mrp_price).each do |m|
define_method("#{m}=") do |argument|
self[m] = Spree::LocalizedNumber.parse(argument) if argument.present?
end