【问题标题】:Relation has_many/belongs_to PG::UndefinedColumn关系 has_many/belongs_to PG::UndefinedColumn
【发布时间】:2016-09-22 21:42:09
【问题描述】:

执行此操作时出现此错误:

user.owned_tipsters

错误:

ActiveRecord::StatementInvalid: PG::UndefinedColumn: ERREUR:  column tipsters.user_id does not exist

我的代码:

class User < ActiveRecord::Base

   has_many :owned_tipsters, class_name: 'Tipster', inverse_of: :owner
end

class Tipster < ActiveRecord::Base

  belongs_to :owner, class_name: 'User', inverse_of: :owned_tipsters
end

如果你能帮助我知道这个错误在哪里,我会感谢你

鲍里斯 谢谢

【问题讨论】:

  • 你在tipsters 中为users 创建了foregin_key 吗?
  • 我在提示者中添加了“owner_id”字段,但总是出错

标签: ruby-on-rails ruby rails-activerecord has-many belongs-to


【解决方案1】:

在你里面添加foreign_keyuser.rb

class User < ActiveRecord::Base
  has_many :owned_tipsters, class_name: 'Tipster', inverse_of: :owner, foreign_key: 'owner_id'
end

【讨论】:

  • 非常感谢,但通常我们不必指定'foreign_key'?
  • @BorisBresciani 当您的名字不符合约定时,您需要:foreign_key 选项:guides.rubyonrails.org/…
猜你喜欢
  • 1970-01-01
  • 2014-10-23
  • 1970-01-01
  • 1970-01-01
  • 2015-10-15
  • 1970-01-01
  • 1970-01-01
  • 2016-01-23
  • 2017-01-30
相关资源
最近更新 更多