Наличие столбца с десятичным типом с точностью до 2. Но сохраняя данные в нем, он сохраняет значение только с одной точностью.

Я использую Ruby 2.2.4 и PostgreSQL. Я создал миграцию:

add_column :plans, :price, :decimal, precision: 7, scale: 2

Когда я собираюсь создать новую запись, она сохранит значение в столбце цены только с одной точностью.

Почему так происходит? Я хочу значение с 2 точностью.

Пример: текущее значение, которое сохраняется: 20.0Я хочу: 20.00

2 ответа

Я использовал number_to_currency(@price). Это метод ActionView::Helpers::NumberHelper

select round(20.0 , 2), 20.00::double precision, 20.00::numeric

введите описание изображения здесь

так что вы можете использовать round() для фиксированного количества цифр после точки

Другие вопросы по тегам