ruby-on-rails – 如何将Postgres JSON值放入Rails夹具?
发布时间:2020-12-17 03:56:59 所属栏目:百科 来源:网络整理
导读:我刚刚将一个Postgres json类型添加到我正在使用的Rails / Active Record表中. 我想在Rails灯具中使用默认值填充记录: fixture_id: existing_column: "foobar" newly_added_column: %= JSON.dump({:reason = 'foobar'}) % 以前,我将这种方式的字符串化JSON
我刚刚将一个Postgres json类型添加到我正在使用的Rails / Active Record表中.
我想在Rails灯具中使用默认值填充记录: fixture_id: existing_column: "foobar" newly_added_column: <%= JSON.dump({:reason => 'foobar'}) %> 以前,我将这种方式的字符串化JSON存储在文本列中.但是,当我现在运行此单元测试时: test "my test" do sut = fixtures(:fixture_id) assert_not_nil sut.newly_added_column end 测试失败.因为它在数据库级别是JSON,我不认为将它转储到字符串是有用的,但是YAML fixtures似乎不能将对象保留为Hash(当我在没有JSON.dump的情况下尝试它时,我获取ActiveRecord :: Fixture :: FormatError:解析时出现YAML错误). 请注意,我正在使用Rails 3,所以我认为对此的一些支持可能在Rails 4中,但在Rails 3中,添加json Postgres列类型的迁移仍然有效. 解决方法
我相信你的夹具可以像下面这样简单:
fixture_id: existing_column: foobar newly_added_column: {'reason':'foobar'} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |