Значение поля цены MRP делится на 1000, когда MRP больше 999 при обновлении значения в Spree (ROR)

Я добавил поле MRP в шаблон «Продукт и варианты», но проблема заключается в том, что если я обновляю во второй раз, и если MRP больше 999 означает 1000, оно делится на тысячу и дает значение 1,00 в поле. Как я могу решить проблему.

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

🤔 А знаете ли вы, что...
Один из популярных примеров использования Rails - Twitter, который начал свою историю как Rails-приложение.


39
1

Ответ:

Решено

решил проблему, добавив в модель следующий код.

%w(mrp_price).each do |m|
define_method("#{m} = ") do |argument|
  self[m] = Spree::LocalizedNumber.parse(argument) if argument.present?
end