Ruby on Rails Exception,没有这样的列:microposts.user_id:SELECT

时间:2018-03-21 15:32:49

标签: ruby-on-rails associations

鉴于本书ruby on rails tutorial (rails 5)

中的以下代码
class User < ApplicationRecord
  has_many :microposts
end

class Micropost < ApplicationRecord
  belongs_to :user 
  validates :content, length: { maximum: 140 }
end

在控制台中执行操作后,我遇到了这样的错误。

  

追踪(最近一次通话):   ActiveRecord :: StatementInvalid(SQLite3 :: SQLException:没有这样的列:microposts.user_id:SELECT“microposts”。* FROM“microposts”WHERE“microposts”。“user_id”=?LIMIT?)

有人可以帮我澄清问题所在吗?

1 个答案:

答案 0 :(得分:0)

对于belongs_to关联,您需要在表中使用foreign_key。

您似乎尚未在user_id表中添加microposts列,或者如果已添加,请检查是否执行了迁移。

同时检查是否正确指定了外键名称