Rails 自定义模型方法中的 where 查询

2023-12-19

在我的 Rails 应用程序中,我已经定义了Kid基于以下字段的计算模型KidsD B。方法如下:

def flip_date 
  self.dob.advance(months: 10) 
end

我想在我的控制器中使用它,因为我有一个定义如下的方法:

new_kids = Kid.where(discharge_date: nil).where('flip_date > ?', Date.current.advance(year: 1).beginning_of_year)

但是我不断收到以下错误:

SQLite3::SQLException: no such column: flip_date: SELECT "kids".* FROM "kids" WHERE "kids"."discharge_date" IS NULL AND (flip_date < '2017-01-01')

关于如何使这项工作有效的任何想法?感谢所有帮助!


如果你真的想使用模型方法,请看一下http://apidock.com/rails/v4.0.2/ActiveRecord/QueryMethods/select http://apidock.com/rails/v4.0.2/ActiveRecord/QueryMethods/select

对于你的情况:

new_kids = Kid.where(discharge_date: nil).select{|k| k.flip_date > Date.current.advance(year: 1).beginning_of_year}

但是 select 方法在返回最终结果之前会获取内存中的每个对象。因此,我建议使用普通的 where 子句,并考虑 dob (数据库中的一列)而不是 Flip_date 。

像这样

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

Rails 自定义模型方法中的 where 查询 的相关文章

  • “after_filter”如何/何时工作/运行?

    我正在使用 Ruby on Rails 3 1 我想知道 对于表现原因 无论是否after filter渲染视图文件后运行 也就是说 当用户访问我的应用程序 URL 时 他 她应该显示的相关视图文件先于渲染after filter运行或af
  • Rails 模型中 self 的价值是什么?为什么没有明显的实例方法可用?

    我的 Rails 3 1 6 应用程序中有一个自定义访问器方法 即使该值不存在 它也会为属性分配一个值 my attr 属性是一个序列化哈希 除非指定了空白值 否则应将其与给定值合并 在这种情况下 它将把当前值设置为空白值 添加了检查以确保
  • Ruby on Rails 3:“超类与类不匹配......”

    平台 Mac OSX 10 6 在我的终端中 我使用 rails c 启动 Ruby 控制台 按照 Ruby on Rails 3 教程构建一个类 class Word lt String def palindrome check if a
  • 分享到 Facebook 墙,不弹出对话框

    我正在 Rails 中构建一个 Facebook 应用程序 用户在其中创建一个条目并将其提交到其他用户的条目集合中 我想做的是在提交时自动将指向该条目的链接共享到用户的墙上 但我无法理解 Graph API 文档在没有弹出对话框的情况下执行
  • 如何允许具有 Rails 强参数的哈希

    我正在开发一个带有名为 element 的 atter accessor 对象的模型 我想将表单数据数组传递给元素对象 在 Rails 控制台中 我收到 未经允许的参数 错误 Parameters authenticity token gt
  • 如何通过活动管理员获取当前登录的用户?

    我想知道如何获取通过活动管理 GUI 登录的当前用户 主页 http www activeadmin info http www activeadmin info 提前致谢 MODEL 管理员用户 rb class AdminUser lt
  • Rails 忽略渲染和redirect_to

    我在这里有一个非常简单的 Rails 问题 但我似乎无法在任何地方找到答案 我想有些问题源于我遵循 Rails 1 2 和 Rails 2 1 的教程 反正 我正在编写一个博客系统 并且正在实现评论位 使用脚本 控制台创建评论后 我的评论显
  • 模拟 RSpec 单元测试中的竞争条件

    我们有一个异步任务 它对对象执行可能需要长时间运行的计算 然后结果缓存在对象上 为了防止多个任务重复相同的工作 我们添加了带有原子 SQL 更新的锁定 UPDATE objects SET locked 1 WHERE id 1234 AN
  • 在 Ruby on Rails 中查找两个日期之间的月数

    我有两个 Ruby on Rails DateTime 对象 如何找到它们之间的月份数 请记住它们可能属于不同年份 date2 year 12 date2 month date1 year 12 date1 month 更多信息请访问htt
  • 在heroku cedar上安装GEOS

    我们在 heroku cedar stack 上安装 GEOS 库时遇到了麻烦 我们遵循了这个指南 https devcenter spacialdb com Heroku html https devcenter spacialdb co
  • 是否可以反转类中包含的模块?

    您可以将模块包含在类中 以通过向特定类添加类方法和实例方法来扩展类功能 module M def self class method from module from class method from module end def ins
  • Ruby on Rails:设计 http://0.0.0.0:3000/users/sign_out 问题

    http 0 0 0 0 3000 users sign in http 0 0 0 0 3000 users sign in有效但是http 0 0 0 0 3000 users sign out http 0 0 0 0 3000 us
  • 如何将附加数据传递给设计邮件程序?

    我有一个可以处理许多子域的 Rails 应用程序 并且有多个使用不同域名运行的实时版本 这会导致 URL 介于 mywebsite com company1 mywebsite com company1 mytestwebsite com
  • 如何使用 Ruby 验证 Webhook? (在轨道中)

    我正在学习如何验证Paddle https paddle com docs reference verifying webhooks 使用 Ruby 进行 webhook 他们的示例提供了如何使用 PHP Python 和 JavaScri
  • 让 Rails 测试了解 Rails 内部链之外的 Rack 中间件

    Context 应用程序使用一个 Rack 中间件must在 config ru 中设置 而不是在 Rails 的内部中间件链中设置 这是出于与该问题无关的原因 Question 如何让我的测试 功能和集成 意识到这个中间件 我将用一个例子
  • 这个 MiniTest::Unit::TestCase 警告是什么意思?

    我的测试运行没有问题 突然出现以下警告 MiniTest Unit TestCase is now Minitest Test 以下库中报告了这一点 ruby 1 9 3 p392 lib ruby 1 9 1 test unit test
  • Rails 3 在迁移问题中添加外键

    有谁知道使用迁移在 Rails 3 中创建外键的方法吗 the 外国人宝石 https github com matthuhiggins foreigner对我来说效果很好 它向 Rails 迁移添加了一些方法 可以轻松创建和删除外键 ex
  • Rails sunspot-solr - 带连字符的单词

    我正在使用 sunspot rails gem 到目前为止一切都很完美 但是 我没有得到带有连字符的单词的任何搜索结果 例子 字符串 tron 返回很多结果 所有文章中提到的词都是e tron 字符串 e tron 返回 0 个结果 即使这
  • 在 Rails 3 项目中加载种子数据

    到目前为止 我一直在使用 Fixtures 以及 rake 任务来为我的数据库创建一些种子数据 这工作得很好 但我突然遇到了奇怪的问题 比如在模型中获取 autogen id 1 2 3 然后在连接模型中获取错误的 id 使得关联根本不起作
  • Ruby/Rails/Rack 代码中的“use”关键字/单词

    最近我偶然在Ruby代码中看到这个词 use 当我正在查看一些与goliath https github com postrank labs goliath 中间件等 看起来它不同于include extend and require 有人

随机推荐

  • 将枚举转换为值数组(将所有 JSON 值放入数组中)

    我用这个方法JavaScript 中的枚举 https stackoverflow com questions 287903 enums in javascript在我们的代码中创建枚举 So var types WHITE 0 BLACK
  • 无法识别获取内容命令

    我们有通常在 UNIX 环境中执行的脚本 以下是脚本中的一行 command gt use bin tail n 1 path grep silent F message rm f path 当在 PowerShell 中运行时 use b
  • RecyclerView动态标题

    我一直在使用 RecyclerView 添加动态标头 我提供了一个示例图像 如下所示 在上图中 孩子们是有限的 但我的情况并非如此 标题之后我的孩子们不确定 基本上代替header0这将是月份名称MAR以及下面发生的事情MAR月将至 数据来
  • 从意图中获取 Alexa Slot 值

    我正在努力构建 Alexa 技能 但在从意图对象中获取槽值时遇到了障碍 意图对象 JSON 如下所示 intent name string slots string name string value string 我的问题是识别插槽的第一
  • 404 尝试发布文件主题时出错

    我正在尝试在我的 d2l orgUnit 中创建内容 但我不断收到 404 页面未找到的消息 我是从 Android 模拟器调用这个的 我已使用 POST API 成功创建了一个模块和主题链接 我确实看过这个帖子404 将内容发布到 Des
  • 在 shell 脚本中使用 read 命令按行读取输入文件会跳过最后一行

    我通常使用 read 命令将输入 文件逐行读取到 shell 脚本中 如果未在输入文件 blah txt 的最后一行末尾插入新行 则如下所示的示例代码将产生错误结果 bin sh while read line do echo line d
  • 如何使用 JQuery 获取特定表单字段值

    我有一个表格
  • AppDomain 卸载后程序集未卸载?

    我使用 AppDomain 来加载程序集然后卸载它们 但是 我遇到了一个非常棘手的问题 卸载 AppDomain 后 我仍然可以在进程资源管理器中看到某些程序集被加载了多次 为什么还有加载的程序集的剩余部分 AppDomain Unload
  • 安全令牌 URL - 安全性如何?代理身份验证作为替代方案?

    我知道它是安全令牌 URL 也许还有另一个名称 但我想你们都知道 如果您想限制向某个客户端传送内容 则该技术主要适用于您已提前提供特定 URL 的情况 您获取一个秘密令牌 将其与您想要保护的资源连接起来 拥有它 当客户端在您的一台服务器上请
  • 在 REST 中处理添加/删除多对多关系的正确方法是什么?

    假设我们有一个实体 其中包含服务器上的用户列表 并且我们希望将其公开为其余实体 正确的做法是什么 我的第一个猜测是这样的 entity 1 user 5 我们可以使用 PUT 进行更新 使用 DELETE 进行删除吗 这是正确的吗 我去了维
  • 在片段中注册和取消注册 BroadcastReceiver

    我的应用程序有一个带有 3 个片段选项卡的操作栏 在第二个片段中 我注册和取消注册广播接收器 我取消注册接收者onPause并将其注册到onCreateView and in onResume getActivity registerRec
  • 如何检查用户是否在不同应用程序中登录 mediawiki?

    情况如下 我有一个 Mediawiki 安装 以及一些额外的服务器端脚本 这些脚本需要更多资源并且已经用不同的语言 python 编写 python 代码将与 Mediawiki 代码非常松散地耦合 只能通过单击此处或那里的链接来调用 我想
  • 热图颜色在绘图中不起作用

    我正在尝试使用 Shiny 中的 R 绘图来打印热图网格 我想给他们一个自定义的色阶 但它的行为并不像我想要的那样 当我使用colors 在构建我的绘图图表时 它似乎使用值的分布 而不是我给它分配颜色的 zmin 和 zmax 选项 在下面
  • Ant 到 Maven - 多个构建目标

    我有一个 Ant 构建 目前正在转换为 Maven 然而 Ant 构建有 2 个构建目标 一个构建整个应用程序 另一个从其中的一些文件 只有几个 构建 JAR 在 Ant 中 很容易有多个构建目标来处理这个问题 但我试图确定在 Maven
  • 使用 d3_sankey 重现 Sankey 图示例时出现问题

    我正在尝试重现简单的例子rCharts绘图库sankey图表 我发现这个例子是从头开始 http timelyportfolio github io rCharts d3 sankey example build network sanke
  • Next.js 和 Create React App 有什么区别?

    我试图找出两者之间的区别Next js https nextjs org and 创建反应应用程序 https create react app dev 加拿大税务局 我知道两者都是为了让我们在开发前端应用程序时变得更轻松React htt
  • date() 函数在 Safari 和 Firefox 中返回无效日期

    我按以下方式格式化日期 date new Date 2013 05 12 20 00 00 formattedDate new Date date getFullYear date getMonth date getDate 当我在 Chr
  • 如何在不访问 MVC 应用程序中的安全页面的情况下触发 IdentityServer4 登录?

    在文档中http docs identityserver io en release quickstarts 3 interactive login html http docs identityserver io en release q
  • Firestore 的 getCountFromServer() 出现错误

    我正在努力获得新的getCountFromServer Firebase 9 11 中发布的功能可以与 Angularfire 一起使用和 或不与 Angularfire 一起使用 但我收到一个奇怪的错误 案例 我想检索组织内成员集合的大小
  • Rails 自定义模型方法中的 where 查询

    在我的 Rails 应用程序中 我已经定义了Kid基于以下字段的计算模型KidsD B 方法如下 def flip date self dob advance months 10 end 我想在我的控制器中使用它 因为我有一个定义如下的方法