跨多个模型的 Rails 搜索

2023-11-26

我有一个问题。我有一个显示视图,充当仪表板并引入来自其他模型的记录,然后引入与之关联的模型。我有一个简单的搜索表单,可以很好地搜索一个模型,但我不知道如何让它也搜索关联的模型。我认为全文搜索是没有必要的,而且我不确定它会如何工作,因为我不想要在整个网站上搜索的内容。

Thanks

公司/展会/1

<div id="form">
  <div class="search">
   <% form_tag battalion_company_path, :method => :get do %>
   <p>
   <%= text_field_tag :search, params[:search] %>

   <%= submit_tag "Search", :name => nil %>

   </p>
 <% end %>
</div>
</div>

<div id="bc_box">
<% @soldiers.each do |soldier| %>
<div id="bc_focus">
   <div class="right">
    <%= link_to image_tag("../images/buttons/info.png", :border=>0),  battalion_company_soldier_path(@battalion, @company,soldier) %>
    <%= link_to image_tag("../images/buttons/edit.png", :border=>0), edit_battalion_company_soldier_path(@battalion, @company,soldier) %>
    </div>
   <%=h soldier.rank %> <%=h soldier.lastname %><br />
   Cell: <%=h soldier.cellphone %><br />
   <% soldier.primaries.each do |primary| %>
   <p>
   <%=h primary.firstname %> <%=h primary.lastname %> (<%=h primary.relationship %>)<br />

   (c):<%=h primary.cellphone %><br />
   <%=h primary.email %><br />
   </p>
    <% end %>

</div>
  <% end %>
</div>

士兵.rb

def self.search(search)
  if search
    find(:all, :conditions => ['email LIKE ? OR lastname LIKE ? OR firstname LIKE ?', "%#{search}%", "%#{search}%", "%#{search}%"])
  else
    find(:all, :order => 'lastname')
  end
end

公司控制器

@soldiers = @company.soldiers.search(params[:search])
@primary = @company.primaries.find(:all,:conditions => ["relationship = 'Spouse'"])

您的应用程序背后的搜索引擎怎么样,例如思考狮身人面像?将缓存和搜索的艰苦工作留给其他人,让您的 Rails 应用程序提供结果。

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

跨多个模型的 Rails 搜索 的相关文章

  • Django - 提交具有同一字段多个输入的表单

    预警 我对 Django 以及一般的 Web 开发 非常陌生 我使用 Django 托管一个基于 Web 的 UI 该 UI 将从简短的调查中获取用户输入 通过我用 Python 开发的一些分析来提供输入 然后在 UI 中呈现这些分析的可视
  • RoR - Rails 中的大文件上传

    我有一个 Rails Web 应用程序 允许用户上传视频 视频存储在 NFS 安装的目录中 当前的设置适用于较小的文件 但我也需要支持大文件上传 最多 4GB 当我尝试上传 4GB 文件时 它最终会发生 但从用户体验的角度来看很糟糕 上传开
  • 服务器上的 Rails 会话

    我想让一些 Rails 应用程序在不同的服务器上共享同一个会话 我可以在同一服务器内完成此操作 但不知道是否可以在不同服务器上共享 有人已经做过或者知道怎么做吗 Thanks Use the 数据库会话存储 https github com
  • JAVA:如何搜索地图?

    我有一个 Map 其键为字符串 其值为集合 包含整数 假设我的钥匙看起来像 苹果 香蕉 橙色 等 用户输入文本 我将其保存为字符串变量 如何在我的地图中搜索相同的密钥 因此 如果用户输入 apple 我如何将该字符串提供给方法并让该方法在我
  • 在上下文中提取搜索字符串

    我正在尝试执行 MySQL 查询 在上下文中提取搜索字符串 因此 如果搜索是 mysql 我想从 body 列返回类似的内容 下载后只需几分钟MySQL安装程序即可使用 这就是我现在得到的 但它不起作用 因为它只是从正文字段中获取前 20
  • Shoulda/RSpec 匹配器 - 条件验证

    在我的代码中 我使用 Shoulda 匹配器进行了以下验证 效果很好 it should validate presence of name 在我的模型中 我已将条件添加到验证中 validates presence of name if
  • PHP 中的多个插入查询[重复]

    这个问题在这里已经有答案了 我正在尝试创建一个 php html 表单 它将结果插入到狗展数据库中 问题是 无论我做什么 我都会收到此错误 查询失败 您的 SQL 语法有错误 检查与您的 MySQL 服务器版本相对应的手册 了解在 INSE
  • 为 RoR 中的每个用户创建新的 URL 路径

    如何在 Ruby on Rails 中实时创建新的 URL 路径 例如 我希望我的用户拥有 name XXX com 或 XXX com name 仅供参考 我在 Heroku 上托管代码 看看 subdomain fu 插件 https
  • 在数据库中搜索时忽略空文本框

    此代码能够搜索数据并将其加载到DataGridView基于搜索表单文本框中提供的值 如果我将任何文本框留空 则不会有搜索结果 因为 SQL 查询是用 AND 组合的 如何在搜索 从 SQL 查询或 C 代码 时忽略空文本框 private
  • 如何配置database.yml以部署到Heroku

    我最近升级到了最新版本的Rails 并且不明白如何将应用程序部署到Heroku 这是我的database yml file default default adapter postgresql pool 5 timeout 5000 dev
  • jQuery 变量在定义时声称它是未定义的

    我试图在同一页面上有两个自动填充文本框 一个用于手机型号 input1 一个用于固件 input2 当两者都填充时 我希望显示一个带有ID input1input2 的div 但是当在input1 中输入值时 它声称phone 的变量未定义
  • 在 Laravel 中的编辑表单上获取选定选项

    我的网站订单有一个可编辑的表单 并且有以下字段 User quantity note status 我在此表单中还有其他选项 但只有这些字段对我来说很重要 以便能够获取默认值 例如 我希望能够查看用户默认订购的数量 然后我可以更改它或保留它
  • C# 存档中的文件列表

    我正在创建一个 FileFinder 类 您可以在其中进行如下搜索 var fileFinder new FileFinder new string C MyFolder1 C MyFolder2 new string
  • 如何根据域名更改视图格式

    我想知道是否有任何方法可以根据域名更改相同 Rails 应用程序的视图格式 例如 www domain com gt respond to format html api domain com gt respond to format xm
  • RSpec 无法从 Factorygirl 中找到工厂

    我将在 Rails3 项目中将 RSpec 与 Factory Girl 一起使用 我已经安装了 Factory Girl 但它找不到工厂我有这个错误 Failure Error Factory build user should be v
  • 如何设计 RESTful 搜索/过滤? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我目前正在 PHP 中设计和实现 RESTful API 然而 我并没有成功地实现我最初的设计 GET users list of users
  • 如何在不初始化Rails的情况下从schema.rb创建数据库?

    我正在尝试从 schema rb 创建所有表 我使用命令 rake db schema load 但是 这失败了 因为在我的一个初始化程序中 它引用了一个显然不存在的模型 表 因为数据库为空 我可以注释掉这些行 然后再次运行 schema
  • 处理铁路中 STI 子类路线的最佳实践

    我的 Rails 视图和控制器散布着redirect to link to and form for方法调用 有时link to and redirect to它们链接的路径是明确的 例如link to New Person new per
  • Angular 5 - 使用对象进行表单控制

    我目前正在开发一个由 Django 支持的 Angular 应用程序 该应用程序的一部分是它需要显示成员列表 成员数组看起来有点像这样 name John Smith id 3 score set name Jane Doe id 7 sc
  • Rails 6:每个用户只能创建一个配置文件

    我目前正在开发 Rails 6 应用程序 我有以下关联 用户有一个配置文件 并且配置文件属于用户 当编辑用户的配置文件时 我最终为该用户提供了两个配置文件 我希望每个用户只有一份个人资料 编辑表单 profile edit html erb

随机推荐

  • Python urllib2 强制 IPv4

    我正在使用 python 运行一个脚本 该脚本使用 urllib2 从天气 api 获取数据并将其显示在屏幕上 我遇到的问题是 当我查询服务器时 出现 没有与主机名关联的地址 错误 我可以使用 Web 浏览器查看 api 的输出 并且可以使
  • Pandas 嵌套排序和 NaN

    我试图理解预期的行为数据框 sort在具有 NaN 值的列上 给定这个数据框 In 36 df Out 36 a b 0 1 9 1 2 NaN 2 NaN 5 3 1 2 4 6 5 5 8 4 6 4 5 正如预期的那样 使用一列排序将
  • 用于长时间运行测试的 testthat 模式

    我有一堆测试 我不希望它们在 CRAN 检查或 Travis CI 构建期间运行 它们要么是长时间运行的 要么可能导致写入网络数据库的事务 并发冲突 哪种分离它们的方法 与 R CMD 检查测试 最适合testthat 我应该将这些测试放在
  • 实体框架CTP5 - 如何调用存储过程?

    这可能是一个简单的答案 但我看不到如何使用 EF CTP5 执行存储过程 在实体框架 4 0 中 我们这样做了 ExecuteFunction ContainerName StoredProcName new ObjectParameter
  • 当列名包含空格和特殊字符时从 data.table 包中读取?

    我有一个 csv 文件 其中列名称包含空格和特殊字符 fread用引号导入它们 但我怎样才能改变这种行为 原因之一是我的列名以空格开头 但我不知道如何处理它们 任何指示都会有帮助 编辑 一个例子 gt packageVersion data
  • iOS下拉视图[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我一直在寻找下拉视图 展开和折叠视图 当用户单击它或折叠时基本上会展开 下拉列表基本上用于包含文本视图 文本字段 到目前为止 我无法找到如何创建这个
  • python中csv.writer的制表符'\t'的分隔符

    我想将字典写入 csv 中 如下形式 column1 column2 aaa 1 bbb 2 但是当我在以下代码中使用 t 作为分隔符时 import csv csv filename test csv dict aaa 1 bbb 2 w
  • Playframework:[RuntimeException:java.lang.reflect.InitationTargetException]

    我正在尝试基于 Zentask 示例创建一个简单的登录 zentask playframework 但是当我单击调用 Application authenticate 操作的登录按钮时 它会给出运行时异常 我已用 error 标记了该行 R
  • C++17/C++2a 中编译时的哈希类型

    考虑以下代码 include
  • 我可以在 XML 中绘制矩形吗?

    我想知道是否可以在 XML 中绘制矩形 我知道如何以编程方式使用drawRect方法进行绘制 是的 你可以 这是我之前做的
  • 在 Nodejs Docker 镜像上运行 Redis

    我有一个 Docker 映像 它是一个 node js 应用程序 该应用程序从本地运行的 Redis 检索一些配置值 正因为如此 我正在尝试在 Docker 映像内的同一容器中安装并运行 Redis 如何扩展 Docker 文件并在其中配置
  • 检测 Visual Studio 2010 中的重复代码

    Clone Detective 是一个在 VS 2008 中查找重复代码的好工具 有没有集成到 VS 2010 中的查找重复代码的工具 克隆侦探看起来并不像正在积极开发中1 2 几周后您似乎没有得到任何答案 暗示没有任何答案完全符合您的要求
  • Android studio 无法添加苹果设备

    我想在 Android studio 中试用 Kotlin Multiplatform Mobile KMM 我已经安装了插件 当我尝试添加 IOS 配置时 没有任何显示 我只有一个 IOS 选项 但当我点击它时什么也没有显示 Androi
  • 如何创建 WPF 组合框平面样式?

    我想为 WPF 组合框创建一个平面样式模板 它看起来像 Visual Studio 2010 中的组合框 此外 我想为此模板使用 Visual Studio 画笔 有人帮我找到路吗 有完整的模板吗 还有人知道有关可以从其他应用程序获取控件模
  • Parse Cloud 中的主密钥是什么?

    有人可以简单地向我解释一下吗master key在解析云代码中 最近实现的 CC 功能 使用主密钥 是否有可能改变其他非 Cloud Code 功能的行为 例如 您有一个正常工作的解决方案 可以让当前用户添加其他PFUser对象到关系中并根
  • 如何在android上实现HTTP服务器

    我在 WIFI 提供的同一个 LAN 上有两个 Android 应用程序 应用程序 A 在端口 8033 上打开侦听套接字 应用程序 B 使用 HttpClient 在端口 8033 上访问 A 如何使 A 可以对 B 执行POST和GET
  • 如何使用 Ruby 处理 UTF-8 电子邮件标头(如主题:)?

    我是一名电子邮件 n00b 但我正在开发一个使用 Unicode 字符发送 HTML 电子邮件的应用程序 正如我的朋友所说的 享受编码地狱 The Subject 标头来自用户输入 因此可能包含 Unicode 字符 一些邮件客户端 如 G
  • 将带后缀的文件大小转换为字节的最简单方法

    标题确实说明了一切 但我目前正在使用一个带有 case 语句的简单函数将人类可读的文件大小字符串转换为以字节为单位的大小 它工作得很好 但移植到其他代码中有点笨拙 所以我很想知道 shell 脚本是否可以使用任何广泛可用的命令 基本上我想获
  • Laravel 5 更改 public_path()

    我正在尝试移动public文件夹到其他地方 但是找不到修改的地方public path 多变的 现在 public path 返回错误的文件夹路径 我可以在哪里设置变量public path 您可以使用 ioc 容器覆盖公共路径 对我来说完
  • 跨多个模型的 Rails 搜索

    我有一个问题 我有一个显示视图 充当仪表板并引入来自其他模型的记录 然后引入与之关联的模型 我有一个简单的搜索表单 可以很好地搜索一个模型 但我不知道如何让它也搜索关联的模型 我认为全文搜索是没有必要的 而且我不确定它会如何工作 因为我不想