gpt4 book ai didi

ruby-on-rails-4 - search_data方法不适用于Searchkick重建索引

转载 作者:行者123 更新时间:2023-12-03 00:28:04 24 4
gpt4 key购买 nike

我的一个启用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

在Rails Console中, 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/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com