更新时ActiveRecord意外的字符串错误

时间:2017-11-23 10:07:30

标签: ruby-on-rails

我有一个Graph对象,它有许多属性,包括duration:integer和参数,类型为hstore。 成功创建图形对象后,当我尝试更新持续时间时,例如

graph.update(duration: 5)

我收到以下错误:

ActiveRecord::StatementInvalid: PG::InternalError: ERROR:  Unexpected end of string

造成这种情况的原因是什么?

1 个答案:

答案 0 :(得分:1)

事实证明,在第一次保存对象时,我意外地输入了另一个图形对象,例如

Graph.create(duration: 2, parameter: graph_1)

奇怪的是,这工作正常,但是当我尝试更新它时,错误是抛出了“意外的字符串错误”。解决方案是通过使用哈希值设置参数属性来正确执行create操作。

Graph.create(duration: 2, parameter: hash_1)