在终端和pry控制台中种子文件矛盾

时间:2018-05-19 13:39:11

标签: ruby-on-rails postgresql pry-rails

我有一个小问题。我正在建立一个简单的项目网站,有4个模型(用户,文章,讨论,评论)。

已设置以下关联:

用户有很多讨论和评论,文章有很多讨论(和讨论评论)。评论属于讨论和用户,讨论属于文章。

在我的seeds.rb文件中,我已经将条目放入这些表中,并且具有正确的关联。在做了几个条目之后,我已经包含了一个

puts "Created #{User.all.length} users..."

这样我就可以在终端看到一切正常。

使用rails db:seed时,puts消息将为用户和文章输出正确的数字,但会为评论和参数输出0。

但是,我可以检查rails dbconsole SELECT * FROM comments;将返回种子文件中的所有条目。

在pry-rails控制台中,协会似乎也已到位。诸如Comment.first.user之类的命令将根据种子文件输出预期的关联。

为什么行puts "Created #{Comment.all.length} comments..." 输出"创建0条评论......"在终端中,但pry控制台输出8中的Comment.all.length(在种子文件中创建的注释数量)?

1 个答案:

答案 0 :(得分:0)

通过在建立关联之后放置puts "Created #{User.all.length} users..."行来解决问题。