searchkick 索引相关模型字段

2024-01-07

我有一个 Rails 应用程序,我正在从 Sphinx 切换到 ElasticSearch 并使用 gem searchkick。

我有一个模型教师和一个模型标签(通过 gem),其中教师可以关联多个标签。在教师模型中,我定义了这样的索引:

def search_data
    {
      name: name,
      intro: intro,
      bio: bio,
      tag_name: tags.name
    }
end

姓名、简介和简介是教师属性,但我想索引与教师关联的标签的姓名。我怎样才能做到这一点?

现在的样子,它索引了对象(关系)的名称,如何索引标签对象内的属性名称?


提出问题后不久,我找到了关于其中一个问题的解决方案github页面 https://github.com/ankane/searchkick/issues/74:

def search_data
    {
      name: name,
      intro: intro,
      bio: bio,
      tag_name: tags.map(&:name)
    }
end

这索引了正确的属性。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

searchkick 索引相关模型字段 的相关文章

  • 未定义的方法“stringify_keys!”轨道上的红宝石

    我有这个代码 def addcar car Car new params car render action gt list end p p 它给了我这个错误 未定义的方法 stringify keys 对于 本田 字符串 我不明白出了什么
  • ActionMailer最佳实践:调用模型或控制器中的方法?

    发送电子邮件通常是在对模型执行操作后调用的 但电子邮件本身是一个视图操作 我正在寻找您如何思考要问自己哪些问题来确定将操作邮件程序方法调用放在哪里 我见过 使用过它们 在模型方法中 相关但独立的关注点耦合不良 在模型的回调中 例如 afte
  • Doctrine 自动递增起始值@ORM\GenelatedValue

    如何使用注释设置自动递增 id 的起始值 我希望它从 250000 开始 ORM Id ORM GeneratedValue ORM Column type integer protected id ORM Id ORM Generated
  • Elasticsearch,如何使 NEST 地图响应类

    首先 我使用的是NEST 5 5 0 我对远程 elasticsearch index 的使用如下 var node new Uri http distribution virk dk cvr permanent var settings
  • 从 Rails 获取所有模型的列表[重复]

    这个问题在这里已经有答案了 我需要一个包含所有模型 类名 的列表 这些模型末尾有模式 Cube 例子 我所有的模型 ModelFoo ModelBar ModelBarCube Mode2BarCube 我需要的 ModelBarCube
  • 将局部变量向下传递 Rails 4 中的部分层次结构以实现 Ransack 关联

    我正在尝试使用 Ransack 在我的模型的所有索引页上实现搜索和排序表单 我希望尽可能地做到这一点 因此我在视图 应用程序文件夹中创建了三个部分 视图 application table search and sort form html
  • 使用 jquery tokeninput 和acts_as_taggable_on

    我已经实现了这篇文章中概述的框架 如何使用 jquery Tokeninput 和 Acts as taggable on https stackoverflow com questions 6674127 how to use jquer
  • 带有日期的铁路路线

    因此 我有一个每周日历视图 并且设置了一条路线来接受 year month day 作为开始日期 match events year month day gt events index constraints gt year gt d 4
  • 显示对帖子acts_as_votable进行投票的用户

    我正在使用 acts as votable gem 并实现它 以便用户可以对帖子模型进行投票 我想做的是 当我显示帖子时 我想列出用户投票的内容 我目前通过以下方式显示分数 在 posts index html erb 中 这效果很好 我只
  • 无法编辑凭证 Rails 5.2

    当我这样打开文件时 EDITOR atom wait bin rails credentials edit 我得到一个全新的文件 该文件被分配了新名称 number credentials yml 并报告 新凭据已加密并保存 但我没有机会编
  • 尝试将 select2 与 Rails 7 上的 Importmaps 一起使用

    我正在尝试在新的 Rails 7 应用程序上使用 Select2 但遇到的困难如下 我已将其固定到导入映射中并像这样导入 pin application preload true pin hotwired turbo rails to tu
  • 配置 Puma 和 Sidekiq

    可能更多的是试图克服学习曲线 实际的代码问题 如果这看起来很愚蠢 我深表歉意 目前我在生产中遇到了这个错误 基本上我一直收到这个 redis池太小 的消息 我不知道从哪里开始 实际上我基本上不了解如何使用 puma 或配置后的任何内容 如缩
  • Rails 3 在迁移问题中添加外键

    有谁知道使用迁移在 Rails 3 中创建外键的方法吗 the 外国人宝石 https github com matthuhiggins foreigner对我来说效果很好 它向 Rails 迁移添加了一些方法 可以轻松创建和删除外键 ex
  • PG::UniqueViolation:错误:重复的键值违反了唯一约束

    我在 Rails 4 2 6 中使用 devise 4 2 0 在我的应用程序中 我在用户和配置文件表中使用嵌套属性 仅当我创建新记录时才需要验证密码 当我更新创建的记录时 密码字段不会验证 My user rb文件是 class User
  • 为什么“jQuery-Rails”经常位于资产组之外

    为什么我经常看到gem jquery rails之外的 assets group group assets do gem sass rails gt 3 1 0 gem coffee rails gt 3 1 0 gem uglifier
  • Rails 中的时间字段返回空白

    我有一个在 Sqlite3 上运行的简单 Rails 3 b1 Ruby 1 9 1 应用程序 我有这张表 create table time tests do t t time time end 我看到这种行为 irb main 001
  • Rails 3.2.3 命名空间控制器被同名的全局控制器覆盖

    当全局应用程序控制器首先加载时 命名空间应用程序控制器在加载该命名空间内的页面时不会加载 应用程序控制器如下所示 class ApplicationController lt ActionController Base protect fr
  • Elasticsearch 查询时间增加会产生顺序不足的结果

    给定搜索关键字的 ES 搜索结果one two three申请后好像出错了boost每个关键字的功能 请帮助我修改我的 错误 查询 以实现下面我所描述的 预期结果 我在ES1 7 4与卢塞恩4 10 4 提升标准 three 被认为是最重要
  • 无法通过远程连接连接到kibana

    我已经在服务器上安装了 Kibana 5 4 和 Elastic search 5 4 我可以使用以下命令在本地计算机上通过curl 访问 Kibana 和 Elastic search curl localhost 5601 我得到以下回
  • Rails 3.1 资产 - 开发中的奇怪服务

    我遇到了 Rails 3 1 资产管道的问题 资产在开发过程中包含两次

随机推荐

  • 无法检索无法识别的元素提供者的元数据

    每当我尝试使用实体框架模板添加控制器时 都会收到消息错误 但我不断收到错误消息 unable to retrieve metadata for path unrecognized element providers C Users user
  • 如何在 Objective-c 中编写 ok 按钮动作?

    我是新来的xcode questions tagged xcode 我创建了一个对话框 并在对话框上创建了 确定 按钮 现在 我正在对对话框进行一些操作 之后我想单击 确定 按钮关闭对话框 为此我正在做这样的事情 在 h文件中 interf
  • 如何通过longPressGestureRecognizer获取button.tag?

    我正在动态地将图像按钮添加到某些滚动视图中 它们都指向一个 longPressHandler 现在 我如何知道按下了哪个按钮 sender tag 为我提供了添加到按钮的 longGestureRecognizer 标签 我无法手动设置该标
  • jquery UI 对话框:如何在没有标题栏的情况下初始化?

    是否可以打开没有标题栏的 jQuery UI 对话框 我认为最好的解决方案是使用该选项dialogClass jquery UI 文档摘录 在初始化期间 selector dialog dialogClass noTitleStuff 或者
  • 当 input[type="date"] 处于焦点时如何显示日历弹出窗口

    有没有办法在输入元素的焦点上激活本机 HTML5 日期选择器下拉菜单 大输入元件 目前 我只能通过单击输入元素最右侧的箭头来使用日历 大输入元素单击箭头 我想在输入元素的焦点上激活此日历 这是有问题的代码
  • 如何设置 h:selectOneRadio 按钮的默认值

    我无法设置 h selectOneRadio 的默认值 因为我需要预先选择单选按钮
  • Typo3:8.7.9 CKeditor 保存后删除块样式

    我在 Typo3 中有以下 CKEditor 的 YAML 配置 Load default processing options imports resource EXT rte ckeditor Configuration RTE Pro
  • 捕获多个异常并重新抛出一般异常

    我使用反射将一些数据添加到第三方库中的类内的私有变量中 一路上大约有四种不同的异常可以抛出 所有这些都与反射有关 而且所有这些都不太可能发生 我正在对所涉及的类和变量的名称进行硬编码 我不太可能收到任何未找到类或未找到字段的错误 除非图书馆
  • 如何在屏幕上显示PIL图像?

    我正在使用 PIL 库进行一些图像编辑 关键是 我不想每次都将图像保存在硬盘上以便在资源管理器中查看 是否有一个小模块可以让我简单地设置一个窗口并显示图像 从接近年初开始PIL教程 https web archive org web 202
  • 导入酶后加载模块 DomUtils 时出现 Webpack 错误

    我有一个使用 TypeScript 和 React 0 14 的项目 我用 karma mocha chai 设置了测试环境 以及它的工作 但是当我导入并使用酶中的函数时 我在浏览器中收到错误 来自 Chrome 的人类可读错误 Uncau
  • 将 ipad 应用程序转换为在 iPhone 上运行(通用应用程序)

    我有一个可以运行的 iPad 应用程序 现在需要在 iPhone 上运行它 我已经阅读了相当多的内容 但还没有找到一个好的答案 在这个网站上 我看到了一些讨论 但同样没有明确的答案 有谁知道有什么教程吗 我已经在我的代码中捕获了它是否是 i
  • 如何更改Flutter应用程序的名称?

    我刚刚按照以下说明制作了一个 Flutter 应用程序这一页 https codelabs developers google com codelabs first flutter app pt2 0 我用谷歌搜索了如何更改应用程序的名称
  • Java迭代固定长度的数组并使用Scanner类获取值

    如何使用固定长度为 2 的 Scanner 类获取 java 数组的值 并且它将迭代直到其值等于给定值 例如 对于以下输入 A G N H D F 我使用 Scanner 类编写了一个 for 循环来获取固定数组 road 的值 其中长度为
  • logcat 中的 Android SELinux 错误

    我的 logcat 中不断出现这些奇怪的错误 我不仅不知道它们的含义 而且不知道是什么原因造成的 它们在我的应用程序首次启动时出现 gt E SELinux 8163 Function selinux android load priori
  • SHA-1 哈希值可以全零吗?

    是否有任何输入 SHA 1 将计算为四十个零的十六进制值 即 0000000000000000000000000000000000000000 是的 这几乎是不可能的 IE 2 160 分之一 即 0 0000000000000000000
  • 如何使用 XSLT v1.0 而不是使用 XSLT v2.0 正则表达式插入文本?

    我有一个 xml 文件 它描述 除其他外 具有描述完全限定 java 类名的属性值的元素 我正在尝试编写一个 XSLT 转换来修改此文件中描述的类名 以便 例如 出现com example MyClass会变成com example Moc
  • 为什么 RichTextBox 在文档开始之前总是包含额外的字符?

    我从一个空白的 RichTextBox 开始
  • 使用 Java 进行音频混合(没有 Mixer API)

    我正在尝试混合几种不同的音频流并尝试让它们同时播放代替一次一个 下面的代码一次播放一个 我无法找出不使用 Java Mixer API 的解决方案 不幸的是 我的声卡不支持使用 Mixer API 进行同步 我被迫找出一种通过代码来实现同步
  • ASP.NET 用户控件和 jQuery 对话框

    在我的页面上 我得到了以下用户控件 div class editFormDialog style display none font size 12px div
  • searchkick 索引相关模型字段

    我有一个 Rails 应用程序 我正在从 Sphinx 切换到 ElasticSearch 并使用 gem searchkick 我有一个模型教师和一个模型标签 通过 gem 其中教师可以关联多个标签 在教师模型中 我定义了这样的索引 de