我正在使用AR和Rails 3.0.9和SQLite 3.6.22(Ubuntu Lucid Lynx)。我已将FTS3虚拟表添加到以前未使用FTS的数据库中。我不知道如何使用AR调用(例如create_table)来创建我想要的虚拟表。所以我使用原始SQL创建并填充表格。我开始使用迁移。起初效果很好,但结果是schema.rb不完整。不知何故AR不能将FTS表转储到模式中。我一直无法解决这个问题。如何使用ActiveRecord在SQLite3中设置FTS虚拟表?
这意味着,例如,当我运行我的RSpec测试套件时,FTS表不在数据库中。我已经通过添加一个辅助方法来填充FTS表(它只需要几秒钟),并将其添加到之前的相关RSpec示例块中。我还必须有一个单独的数据库种子任务来构建种子后面的FTS表。
目前的安排实际上工作正常,因为它花费很少的时间在飞行中建立虚拟表。但我确信我应该能够直接使用AR调用来构建FTS表,我想可以避免其他问题(表不会转储到schema.rb)。是否有任何文档通过AR设置与SQLite的FTS?我一直无法找到任何。谢谢。
你是如何处理'schema.rb'?它不断尝试以半破的状态更新自己。 –