作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的一个启用Searchkick的模型中有一个search_data方法,但是当要求重新编制索引时,Searchkick看起来并不荣幸。
这是我的模型(节略):
class Archive < ActiveRecord::Base
searchkick
def search_data
{:creator=>self[:creator],:description=>self[:description],:pdf=>self.pdf_contents,:title=>self[:title]}
end
def pdf_contents
Yomu.read(:text,File.read(path_to_file))
end
end
Archive.first.search_data
返回我期望的结果:具有创建者,描述,pdf和标题属性的对象。但是,
Archive.first.reindex
引发错误,表明它无法解析获取日期的字段。 ActiveRecord对象(Archive.first)确实具有dateacquisitioned属性,但是如您所见,它不在search_data方法的属性列表中。那么,为什么在我没有要求Searchkick的reindex方法尝试索引dateacquisitioned属性的情况下呢?
最佳答案
Tire(为Searchkick提供动力)在其reindex方法中调用to_hash
。
https://github.com/karmi/retire/blob/197325b4e7adfef3def5db187733c4530bd7dfed/lib/tire/index.rb#L317
关于ruby-on-rails-4 - search_data方法不适用于Searchkick重建索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21733829/
我正在 postgres 中实现全文搜索。 我想搜索我系统中的所有帖子。帖子全文索引是帖子标题和帖子正文的合并。 我有两种实现方式: 在 posts 表中创建一个 tsvector 列,触发对其的更新
我是一名优秀的程序员,十分优秀!