Rails Rails 调用已有数据库时数据类型问题

mumu · 2015年12月23日 · 最后由 mumu 回复于 2015年12月23日 · 1652 次阅读

在 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,但是转换后不能做精确计算。

#2 楼 @rei #1 楼 @qinfanpeng 非常感谢,问题已解决(虽然不知具体原因是……),使用 gem 包’activerecord-sqlserver-adapter‘时,使用的 4.2.x 版本,是针对 sqlserver2012 以上版本,我用的是 sqlserver2008r2,将 activerecord-sqlserver-adapter、以及相应 activerecord、rails 版本都更改为使用 4.1.2 版本后,取出的数据后面就没有小数点了

需要 登录 后方可回复, 如果你还没有账号请 注册新账号