导轨和数据库特定数据类型的迁移
-
23-09-2019 - |
题
我当前正在运行一个Rails迁移我在哪里加入了特定的数据类型的Postgres到,所述的tsvector。它持有形式的搜索信息的Postgres预计,其内置的文本搜索功能。
这是从我的迁移的行:
t.column "search_vectors", :tsvector
似乎一切都工作正常,并用它来搜索的工作。然而,当我打开了schema.rb,这是我得到了什么:
Could not dump table "users" because of following StandardError
Unknown type 'tsvector' for column 'search_vectors'
这是阻止我的用户表运行单元测试,也令我真的很危险面色鉴于schema.rb应该是我的数据库的权威定义。
我注意到有许多的Rails的插件,似乎使用存储像我所期望的,诸如tsearchable所述的tsvector的相同的方法。我真的只是坚持没有测试,没有我的数据库的一个权威的定义?
解决方案
FYI的人谁碰到这个页面会发生,我解决了这个问题,加入这个(实际上取消注释吧)我的Rails的配置:点击 config.active_record.schema_format =:SQL
其他提示
你尝试指定类型作为字符串而不是符号?
t.column "search_vectors", "tsvector"
如果不工作,那么你可能需要下降到数据库特定的SQL:
def self.up
execute "--Put your PostgreSQL specific SQL statements here"
end
不隶属于 StackOverflow