我有一个模型,其列amount
是数据库中的小数。我想确保BigDecimal
在实例化此模型时只给出具有一定精度的 a 。我已经编写了规范来测试Float
提供 a 时的场景,然后我有一个before_create
回调,如果它不是 a 则引发错误BigDecimal
。
但是,当值到达before_create
回调时,Rails 已经将其转换为BigDecimal
. 我想这很好,而且我可能仍然可以检查精度,但是由于我不确切知道 rails 是如何进行转换的,因此最好在链上进一步检查正确的参数类型和精度。
有没有办法做到这一点?