【问题标题】:Automatically indexing child model in sunspot (with fields requiring the parent to be saved)在太阳黑子中自动索引子模型(需要保存父的字段)
【发布时间】:2011-09-03 00:33:14
【问题描述】:

我有一个模型 Author 与模型 Book 具有 has_many 关系。书籍由 sunspot 索引,并有一个索引字段 :author_name ,该字段提取与其关联的作者姓名。

我有一个表单,可以让你同时通过创建作者和添加书籍

accepts_nested_attributes_for :book

我的问题是,当用书籍创建新作者时,新书没有正确编入索引。我相信当书籍被创建并且 after_save 太阳黑子索引被调用时,关联的新作者还没有被提交,所以它的名字不存在。

对此最好的解决方案是什么?我已经尝试在作者模型上添加一个 after_commit 挂钩来索引所有相关书籍,但是当该方法循环遍历书籍时,它们的 ids/association 为零。

【问题讨论】:

    标签: ruby-on-rails-3 sunspot


    【解决方案1】:

    我必须在父模型上添加一个 after_save 挂钩来查找所有子模型并保存它们。在 after_save 中,我必须根据 ID 重新查找所有书籍 - 否则它们的关联作者为零。

    【讨论】:

      猜你喜欢
      • 2011-09-18
      • 1970-01-01
      • 1970-01-01
      • 2011-07-05
      • 1970-01-01
      • 1970-01-01
      • 2012-01-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多