ruby-on-rails - 为不起作用的模型创建种子数据

标签 ruby-on-rails ruby ruby-on-rails-3 rubygems ruby-on-rails-4

所以我有一个属于用户的问题模型。最初,我想使用属性 public: true 设置基本问题,每个用户都可以看到我想在 Seed.rb 中创建的此类问题。

然后,随后使用答案模型。每个用户的答案都属于某个问题。

现在的问题是创建这些预制问题供用户回答我已在 seed.rb 中尝试了以下操作:

u = User.new(email: "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="bcc8d9cfc8fcdbd1ddd5d092dfd3d1" rel="noreferrer noopener nofollow">[email protected]</a>", password: "testpass", password_confirmation: "testpass", gender: "M")
questions = u.questions.build(title: "What is your favourite food?")
u.save

我想为 View 中的所有用户调用相同的默认问题

questions_controller.rb

def index 
  @questions = Question.all
end

但这似乎不起作用,即当我转到rails c并运行u时,它是一个未定义的方法..并且u.questions是一个空数组。我已在控制台中手动运行这些行并且它们有效,所以我不确定这里发生了什么。

我做错了什么?

更新开发日志

    ^[[1m^[[36mUser Load (16.9ms)^[[0m  ^[[1mSELECT "users".* FROM "users" ORDER BY "users"."id" ASC LIMIT 1^[[0m
  ^[[1m^[[35mQuestion Load (645.9ms)^[[0m  SELECT "questions".* FROM "questions" WHERE "questions"."user_id" = $1  [["user_id", 2]]
  ^[[1m^[[36mActiveRecord::SchemaMigration Load (48.4ms)^[[0m  ^[[1mSELECT "schema_migrations".* FROM "schema_migrations"^[[0m
  ^[[1m^[[36mActiveRecord::SchemaMigration Load (1.0ms)^[[0m  ^[[1mSELECT "schema_migrations".* FROM "schema_migrations"^[[0m
  ^[[1m^[[35m (0.3ms)^[[0m  BEGIN
  ^[[1m^[[36mUser Exists (34.7ms)^[[0m  ^[[1mSELECT 1 AS one FROM "users" WHERE "users"."email" = '<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="1d7c7369757273645d7a707c7471337e7270" rel="noreferrer noopener nofollow">[email protected]</a>' LIMIT 1^[[0m
  ^[[1m^[[35m (0.3ms)^[[0m  ROLLBACK
DEPRECATION WARNING: You didn't set config.secret_key_base. Read the upgrade documentation to learn more about this new config option. (called from service a\
t /usr/local/rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/webrick/httpserver.rb:138)

最佳答案

我认为问题在于 OP 的开发数据库中有错误的数据。

运行 rake db:drop db:create db:setup 似乎可以解决该问题。

关于ruby-on-rails - 为不起作用的模型创建种子数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20335516/

相关文章:

ruby-on-rails - ActiveRecord 有 Lint 吗?

ruby-on-rails - 数组合并(联合)

Ruby 系统调用获取有关命令失败的信息

ruby - 在 html erb 中使用 javascript 值

ruby - 如何在 Ruby 符号中转义破折号 "-"?

ruby-on-rails - 如何在 ElasticSearch for Rails 中为特定字段定义类型

ruby-on-rails - Rails 形式的 f.input 有什么作用?

ruby-on-rails - 在 Heroku 上预编译失败,initialize_on_precompile 设置为 false

ruby-on-rails - Rails - 跳过子类的 rails 验证

ruby - "<top (required)>"在 Ruby 堆栈跟踪中意味着什么?