2011-02-28 68 views
4

我想添加一个简单的mysql全文搜索到一个小表< 2000条目。在rails中全文mysql的搜索

请不要告诉我安装solr或任何其他搜索gems。我试图运行它们,似乎是一个接一个的问题。有一天我会接受它,但那一天不是今天。

我需要添加一个add_index迁移,但是当我运行

 
add_index :users, :name, :fulltext 

我得到一个错误。 - 未找到方法'钥匙'。

我似乎无法找到任何地方解释如何在rails中进行全文mysql搜索的任何文档。

什么是正确的说法,我应该用于add_index,一旦完成,我有什么特别的我的模型使用全文搜索?

回答

1

你可以做以下的迁移

execute "CREATE FULLTEXT INDEX fulltext_name ON users (name)" 

然后,我会建议以下this blog post有关创建rake任务和schema.rb文件与该索引类型兼容。

UPDATE:分辩链接到博客文章

11

也许一个迟到的回答,但别人可能搜索这个像我只是做了。

这对我有效。

add_index :users, :name, name: 'name', type: :fulltext 

或者用于乘列

add_index :users, [:name, :description], name: 'name_description', type: :fulltext