乐者为王

Do one thing, and do it well.

用Rails 2.3打造简单记账应用(8)

今天发现一个问题,收入/支出金额在储存到数据库后小数点后面的数字不见了,经过检查发现是因为amount字段的类型为decimal(10, 0)。

Rails的迁移任务还真是好用,建一个修改列数据类型的migration就能做到。

1
script/generate migration change_amount_on_entries

然后修改该迁移任务的内容为:

1
2
3
4
5
6
7
8
9
class ChangeAmountOnEntries < ActiveRecord::Migration
  def self.up
    change_column :entries, :amount, :decimal, :precision => 8, :scale => 2
  end

  def self.down
    change_column :entries, :amount, :decimal
  end
end

最后执行一下迁移任务就可以了:

1
rake db:migrate

代码下载:https://github.com/dohkoos/qianbao

Comments