我想编写一个查找程序查询,该查询返回具有计划的所有成员对象,而该计划的ID是“ 1”,“ 2”或“ 3”。我怎么做?我尝试编写一个查找程序,仅查找ID“ 1”,但在评估时出现此错误...

问题描述 投票:0回答:1
[8] pry(main)> Member.where(:plans => {:associate => {:id => "1"}}).count (0.7ms) SELECT COUNT(*) FROM "Members" WHERE "associate"."id" IS NULL ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: missing FROM-clause entry for table "associate" LINE 1: SELECT COUNT(*) FROM "members" WHERE "associate"."id" ... ^ : SELECT COUNT(*) FROM "members" WHERE "associate"."id" IS NULL from /Users/davea/.rvm/gems/ruby-2.5.1/gems/activerecord-5.2.2.1/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `async_exec'

我正在使用Rails 5.1。我有以下模型...类Member :nullify class Plan

您必须首先使用joins创建一个INNER JOIN查询。之后,您可以访问联接表:

ruby-on-rails ruby-on-rails-5
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.