0

尝试在我的数据库中建立关系时遇到问题。

我有一个用户和一些评论 (1:N)

Class User .. 
  ...
  has_many :comments
end

Class Comment .. 
 ..
 belongs_to :user
end

尝试通过控制台向用户分配评论时,我输入以下内容:user.comments 我收到以下错误

 ActiveRecord::StatementInvalid: SQLite3::SQLException: no such column:
 comments.user_id: SELECT "comments".* FROM "comments"  WHERE 
 "comments"."user_id" = 1

我已经运行 bundle exec db:test:prepare 和我的迁移如下

rails g migration CreateUsers ..... 

rails g migration CreateComments .....

我已经尝试过 db:schema:dump 并再次迁移,但仍然存在问题。

4

2 回答 2

2

如果您自己添加了belongs_toand has_many,那么您必须为此生成迁移。

rails g migration add_user_id_to_comments user_id:int
于 2013-06-10T15:26:35.497 回答
0

您需要添加user_id评论模型

于 2013-06-10T15:26:24.177 回答