activerecord:不保存值

时间:2013-09-16 14:45:09

标签: ruby activerecord jruby

我在许多项目中使用activerecord,但从未遇到过这类问题。 这是我的班级

class Ondon < ActiveRecord::Base
  self.table_name    = $rdms_3ondon_table
  self.sequence_name = $rdms_3ondon_sequence
end

我创建了一个像这样的记录

Ondon.create(:nr=>member.nr,
               :dossier_nr=>dosnr,
               :cre_dt=>Time.now, 
               :rowversion=>1,
               :status=>4
               )

但是为状态插入的值总是0,无论我输入到create的值是多少。 其他字段插入正常。

当我激活调试器时,在sql中看到插入了值0。

状态是某种保留字吗?不幸的是我无法更改此字段的名称。 有没有人对此提出建议/解决方案?

1 个答案:

答案 0 :(得分:0)

找到它。 oracle表中类型编号的字段状态的精度为1,在这种情况下,activerecords将其处理为布尔字段(0 = false,1 = true),我的值4被忽略。 我将精度提高到6(不知道有关规则),现在插入工作正常。

这是activerecord中的错误吗?我不知道..