在 rails 中通过 activerecord 调用 sqlserver 原数据,原数据类型为 decimal(18,0), 在 rails 中取出时,默认带了一位小数, 例如,原数据是 131,在 rails 中取出后是 131.0 有没有办法 在 activerecord 中定义字段类型?
不知这个是否你需要的
Changes the column to a different type using the same parameters as add_column.
change_column(table_name, column_name, type, options):
已经转换为 BigDecimal,这个格式是对的。要转换为整数可以 .to_i,但是转换后不能做精确计算。
.to_i
#2 楼 @rei #1 楼 @qinfanpeng 非常感谢,问题已解决(虽然不知具体原因是……),使用 gem 包’activerecord-sqlserver-adapter‘时,使用的 4.2.x 版本,是针对 sqlserver2012 以上版本,我用的是 sqlserver2008r2,将 activerecord-sqlserver-adapter、以及相应 activerecord、rails 版本都更改为使用 4.1.2 版本后,取出的数据后面就没有小数点了