Rails 5 编写类似查询的最佳控制器操作

2024-07-04

我想通过客户名称进行 ajax 搜索查询,因此我使用了 like 子句 (看到这个问题 https://stackoverflow.com/questions/26094430/safe-activerecord-like-query)。我正在考虑使用索引操作来响应来自clients_controller的json格式,但我已经使用它来响应html格式,同时对我列出的行进行分页将分页 and will_paginate-引导程序.

什么是最好的方法?制作一种新方法来响应 json 格式,还是应该使用带格式的索引方法?以及如何做到这一点?

我是 ruby​​ on Rails 的新手

客户控制器.rb

def index
  respond_to do |format|
    format.html
    {
       #something like this I know that I would return me a syntax error
       @client = Client.paginate(:page => params[:page])
    }
    format.json
    {
       #something like this I know that I would return me a syntax error
       @client = Client.where("client_name LIKE ? ", "%#{params[:client_name]}%"  )
    }
  end
end

def other_method
  @client = Client.where("client_name LIKE ? ", "%#{params[:client_name]}%"  )
  respond_to do |format|
    format.json {...}
  end
end

在我看来,你应该只保留你的index行动并积累你的范围@client多变的。

请记住,您的 SQL 查询仅在执行类似 Array 方法时才会发送到数据库each在你的变量上,而不是之前。 所以你可以写这样的东西:

def index
  @client = Client.all
  if params[:client_name].present?
    @client = @client.where("client_name LIKE ? ", "%#{params[:client_name]}%")
  else
    @client = @client.paginate(page: params[:page])
  end

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

Rails 5 编写类似查询的最佳控制器操作 的相关文章

  • 带参数的 Rails link_to 远程

    我想使用链接触发模型的远程操作 基本上 这个链接所需要做的就是触发一个带有一个参数的方法 这是我的代码 link to Move Up reorder collection folder path collection folder reo
  • 将 Json 转换为 Map[String, String]

    我有输入 json 像 a x b y c z 我想将此 json 转换为像 Map String String 这样的 Map 所以基本上是键值对的映射 我该如何使用 circe 来做到这一点 请注意 我不知道 Json 中将出现什么键
  • Rails 迁移:尝试将列的类型从字符串更改为整数

    我使用rails生成迁移命令在rails应用程序中创建了一个表 这是迁移文件 class CreateListings lt ActiveRecord Migration def change create table listings d
  • 将 json 发布到 spring mvc 控制器

    控制器签名 我也尝试过作为请求主体 RequestMapping value Lame method RequestMethod POST public ResponseBody boolean getLame RequestParam S
  • 带有 ñ 等特殊字符的 php

    起初我认为问题是当我从 ajax 调用返回 echo json encode row 时 结果 更改为 NULL 但经过测试 我发现这个问题早在之前就已经存在了 在示例 php 文件中 test Nu ez echo test 结果就是Nu
  • bufferedReader() 在 Kotlin 中到底是如何工作的?

    所以我试图从a读取数据 json我的 Android 项目中的文件 val file context assets open myfile json bufferedReader readText 这工作正常并成功打印出我的 json文件为
  • 同时设计宝石跳过确认和通过电子邮件跳过确认

    我正在使用 devise gem 在创建用户时我想跳过确认 并跳过确认电子邮件 例如 User create first name gt vidur last name gt punj confirm skip confirmation 但
  • 传递嵌套属性时出现“NoMethodError(未定义方法‘with_in Different_access’...”

    在谷歌上搜索了一段时间 但没有运气 在传递嵌套属性时 我的 Web 服务上出现 NoMethodError 未定义方法 with in Different access 错误 其他嵌套的也可以工作 但是它们是一对一的 而这是一对多的 cla
  • attr_internal 的用途是什么

    我是 ruby on Rails 的新手 在浏览 Rails 代码时我发现 attr internal response body attr internal action name attr internal formats 它是什么 它
  • 具有 has_many 和 has_one 多态关联的工厂女孩

    我目前正在开发一个项目 我想使用 Factory Girl 创建测试 但我无法使其与多态 has many 关联一起工作 我已经尝试了其他文章中提到的许多不同的可能性 但它仍然不起作用 我的模型看起来像这样 class Restaurant
  • Rails 未在 ajax 帖子上重新加载会话

    我在使用 jQuery 的 Rails 和 ajax 中遇到了一个非常奇怪的问题 尽管我不认为它特定于 jQuery 我的 Rails 应用程序使用 cookie 会话存储 并且我有一个非常简单的登录 可以在会话中设置用户 ID 如果会话中
  • 为什么 Ruby 模块 Kernel 存在?

    在书里Ruby 中的面向对象设计Sandi Metz 说模块的主要用途是用它们实现鸭子类型并将它们包含在每个需要的类中 为什么是红宝石Kernel一个模块包含在Object 据我所知 它没有在其他地方使用 使用模块有什么意义 Ideally
  • PHP 函数从 Web 服务获取数据

    我怎样才能从中获取数据这个网络服务 http onleague stormrise pt 8031 OnLeagueRest resources onleague Utils Countries使用 PHP 我需要一个简单的 PHP 函数来
  • 似乎无法设置表单的编码类型。 (Javascript)

    我正在尝试硬连线一个即时创建的表单 以使用编码类型 发送 JSON application json 在 jQuery 中 我会将其设置为 contentType in an ajax or a post 但是由于某些原因 我需要手动执行此
  • 在SSIS中使用脚本任务导入Json文件

    我是在 SSIS 中使用脚本任务导入 API 的新手 我必须管理一个简单的 API JSON 文件的导入 但这第二个 API JSON 文件有点棘手 我一直在看代码 只是不知道我做错了什么 我的 JSON 文件有一个标头 我需要确定需要循环
  • ruby 中 CSV.open( ) 的第二个参数/参数是什么?

    我想我在这里遗漏了一些非常明显的东西 但是每个人为 CSV open 方法输入的第二个参数是什么 在本例中是 wb 我已经看到这里放了其他字母 但没有人真正解释了它的作用 它有什么作用 CSV open path to file csv w
  • 如何使用 Spark SQL 解析 JSON 对象数组

    现在 JSON 数据如下 Id 11 data package com browser1 activetime 60000 package com browser6 activetime 1205000 package com browse
  • Rails 3 Observer——希望学习如何为多个模型实现观察者

    我想添加一个 Auditor Observer 它可以在创建 3 个模型 书籍 人物 作者 后随时执行操作 我最近听说了观察者功能 但找不到任何有关该功能的文档 Rails 3 支持吗 如何创建一个 Auditor Observer 来为
  • 但很难用 jq 解析 JSON

    我正在慢慢掌握 jq 的工作原理 但距离掌握它还很远 现在我处于一种情况 我已经设法得到了我想要的东西 但没有按照我想要的方式显示它 我确信这很简单 但我错过了 这是我要解析的 JSON 示例 sites site id 123456 st
  • 如何在 JObject 中添加或更新 JProperty 值

    我目前正在使用以下扩展方法来执行此任务 但似乎应该有一些现有的包含方法或扩展来执行此任务 或至少是其中的一个子集 如果里面没有任何东西Json NET那么推荐的流程是什么 或者我如何更改下面的代码以更接近推荐的流程 public stati

随机推荐

  • jQuery keydown 和 :not 带输入

    我正在使用一个小脚本 当按下箭头键时 该脚本会触发页面上的下一个 上一个链接 我试图防止用户在我的搜索输入表单中输入时发生这种情况 也许他们的查询拼写错误并希望使用箭头键来修复 这是我正在处理的内容 var j jQuery noConfl
  • 在 ASP.NET MVC 2.0 中编辑实体框架中的对象并将其保存到数据库中

    所以我知道 EF 实体会跟踪它们自己的更改 并在调用 savechanges 时将它们保存到数据库中 但是这种情况怎么样 我有一个旨在编辑博客文章的页面 它有两种操作方法 HttpGet public ViewResult EditBlog
  • 使用加载器 ts-node/esm.js 运行节点需要导入具有 .js 扩展名

    我正在尝试将我的 package json 设置为模块来运行节点 14 type module 如果我在打字稿文件上运行此命令 node loader ts node esm mjs experimental top level await
  • 如何通过可变参数模板表达概念?

    我想定义一个概念 只有具有特定类型值的元组才能满足 假设为了简单起见 我只想接受仅包含数字类型元素的元组 我该怎么做 e g std tuple
  • 从 android 发送数组并使用 Volley 在 PhP 服务器接收

    你好我想发送一个字符串值数组到 PhP 服务器和 PhP 解码并将它们存储在 PhP 变量中 这是我在 android studio 的代码 private void getEventDetailRespond RequestQueue r
  • 如何在 Perl 中捕获鲤鱼的输出?

    我正在编写一个 Perl 模块 并使用 carp 向调用程序抛出一个非致命警告 carp 警告工作正常 我正在检查输入参数是否满足特定条件 如果不满足条件 则使用 carp 发送警告 并且模块继续使用参数的默认值而不是调用程序的参数通过了
  • 获取此 contenteditable 元素中的当前行和行索引?

    我有一个这样的元素 span line 1 line 2 line 3 line 4 line 5 span 假设用户正在编辑 第 4 行 如何获取该 contenteditable 元素中的当前行和行索引 在插入符号位置 这是使用选择属性
  • Python 解释器优化

    假设我有一个字符串x Python 解释器是否足够聪明 能够知道 string replace x x 应转换为NOP 我怎样才能找到这个 是否有任何参考资料显示解释器能够根据句法分析动态执行哪种类型的优化 不 Python 不能对 NOP
  • 无法验证 sol-wallet-adapter 签名的消息

    Having 创建了一条签名消息 https github com project serum sol wallet adapter sign a message我不确定如何使用生成的签名来使用公钥验证消息 我的用例是 我想使用 Solan
  • Moq 中 Verabilible() 的用途是什么?

    目的是什么Verifiable 如果我验证一个Mock并忽略这一点它仍然验证SetUp Edit 我正在使用VerifyAll 这就是一切都被验证的原因 更改为后Verify 只有我的 Verifiable SetUp正在接受检查 附录 正
  • XML 模式 - 子元素依赖于可选属性的存在

    是否可以在 XSD 中定义以下场景 父元素有一个属性 是可选的 如果该属性不是 present in XML at least one child element must exists If the attribute is presen
  • scrollIntoView 滚动得太远

    我有一个页面 其中包含从数据库动态生成的带有 div 的表行的滚动条 每个表格行的作用就像一个链接 有点像您在视频播放器旁边的 YouTube 播放列表中看到的那样 当用户访问该页面时 他们所在的选项应该位于滚动 div 的顶部 此功能正在
  • 组合或扩展接口?

    我有两个接口 type Request interface Version string Method string Params interface Id interface type Responder interface NewSuc
  • 为移动设备设计网页界面

    如何使您的网站在标准浏览器和各种可用的移动设备上看起来都很好 目前 我尚未决定是尝试调整布局大小以使其适用于小型设备 还是为移动设备提供单独的 CSS 我的用例是一个国际象棋游戏 我希望整个棋盘都可用而无需向下滚动 你会推荐什么 基本上没有
  • 在带有效果的 Android 按钮中使用图像

    现在我在 StackOverflow 上遇到了相关问题 但不幸的是没有一个解决方案对我有用 这就是为什么我不得不单独问这个问题 我是 Android 新手 问题 我需要一个充当按钮的图像 现在我明白 这可以通过在标准按钮上使用图像或使用称为
  • 如何从我的 kubernetes 集群中删除/删除 calico cni

    我已经在数字海洋中安装了我的 kubernetes 集群 1master 3worker 问题是我在这个集群中安装了 flannel 和 calico 我想从集群中完全删除 calico 还是可以拥有多个 CNI 使用以下两个命令从节点中删
  • 使用 RaphaelJS 确定图像何时加载到 svg 中

    我正在尝试弄清楚如何确定 svg 图像何时加载到浏览器中 我正在使用 Raphael JS 并且我已经尝试过 var image paper image path 0 0 10 10 image node addEventListener
  • 将 LIVE SPEECH 与 Tkinter GUI 连接

    我想将 pocketsphinx livespeech 与 Python tkinter GUI 连接起来 这样 GUI 在前端可见 而 Livespeech 在后端工作 但是当我将 tkinter 代码与 livespeech 代码合并时
  • 如何使用 xstream 将 Hashmap 映射到 XML 中的键值属性

    我有以下实体 XStreamAlias entity public class MapTestEntity XStreamAsAttribute public Map
  • Rails 5 编写类似查询的最佳控制器操作

    我想通过客户名称进行 ajax 搜索查询 因此我使用了 like 子句 看到这个问题 https stackoverflow com questions 26094430 safe activerecord like query 我正在考虑