gpt4 book ai didi

activerecord - Ruby on Rails 4 : ActiveRecord method for join

转载 作者:行者123 更新时间:2023-12-04 04:42:39 26 4
gpt4 key购买 nike

我有两个关联的表,用户和列表。此 join 语句在我的所有 Controller 操作中都可以正常工作:

@users = User.joins(:lists).where(lists: {list_id: 1})

在我的 User 模型中,我打算这样做:
def list_joined
self.joins(:surveys).where(surveys: {survey_id: 1})
end

所以在我的 Controller 操作中,我可以这样做:
@users = User.list_joined

但这只是给了我这个错误:
undefined method `list_joined' for #<Class:0x007f93a14138e0>

如何在 ActiveRecord 模型中编写/使用自定义方法来重用连接? (或者我可以吗?)

最佳答案

您尝试编写应该看起来像的类方法

def self.list_joined
joins(:surveys).where(surveys: {survey_id: 1})
end
self在方法定义中指向类,这个定义是, User .

关于activerecord - Ruby on Rails 4 : ActiveRecord method for join,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18667674/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com