gpt4 book ai didi

mysql - 当我在 ruby​​ on Rails 中加入多个表时,出现错误 : "uninitialized constant OfferLetter::Users"

转载 作者:行者123 更新时间:2023-11-29 20:27:28 25 4
gpt4 key购买 nike

我是 ruby​​ on Rails 的新手,我想加入多个表并提取数据并打印。我正在发布我的代码...

这是我的 hr_controller.rb

@employees = OfferLetter.joins(:users, :user_details, :clients)

这些是模型“用户.rb”

class User < ActiveRecord::Base has_many :offer_letter  end

“offer_letter.rb”

class OfferLetter < ActiveRecord::Base  belongs_to :users end

“客户端,rb”

class Client < ActiveRecord::Base belongs_to :user end

“用户详细信息.rb”

class UserDetail < ActiveRecord::Base belongs_to :user end

这里

  • “用户表(ID、电子邮件、名字、姓氏)”
  • “用户详细信息表(用户 ID、联系人号码、性别)”
  • “客户表(用户 ID、公司名称)”
  • “offer_letters(candidate_id、client_id、created_by_id、ctc、client_address)”
  • 此处 (id = user_id) 在用户和 user_details 以及客户端中
  • 客户和 Offer_letter 中的(user_id = client_id)
  • 用户和录用通知表中的(candidate_id = id,created_by_id = id)。
  • **我想打印名字、姓氏、联系电话、性别、ctc、客户地址、公司名称等 **

最佳答案

user.rb中,您需要将offer_letter复数化

has_many :offer_letters

offer_letter.rb中,您需要对users进行单数化

belongs_to :user

查询应该是

@employees = OfferLetter.joins(user: [:user_details, :clients])

希望有帮助!

关于mysql - 当我在 ruby​​ on Rails 中加入多个表时,出现错误 : "uninitialized constant OfferLetter::Users",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39221506/

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