在rails中迁移时出错的是什么?

时间:2013-10-15 08:05:59

标签: ruby-on-rails ruby-on-rails-3

我尝试执行以下迁移命令:

rails g migration add_user_to_posts user_id:integer

但我收到了这个错误:

/mapper.rb:233:in `default_controller_and_action': missing :action (ArgumentError)
/mapper.rb:116:in `normalize_options!'

如何纠正这些错误?

4 个答案:

答案 0 :(得分:2)

这是由错误的路由引起的 - 请检查你的config / routes.rb检查是否有任何路由定义错误

答案 1 :(得分:1)

您遇到的问题与路线有关。

检查您的routes.rb,并显示控制器及其操作的映射。所以,如果它不合适, 错误将被抛出:

`default_controller_and_action': missing :action (ArgumentError)

例如:

常见错误 -

root :to => "home/index"

正确的方式 -

root :to => "home#index"

查看帖子:Default Controller and Actions

如上所述,

  

错误表示默认控制器缺少操作。

答案 2 :(得分:0)

编辑:@Ved Prakash答案是正确的,经过更多研究后我发现我的答案不够好。我要离开这里只是Rails 4.x的相关注释

当您开始使用Rails 4.x时,您有一个新方法来添加引用:

  

rails生成迁移AddUserRefToProducts用户:引用

答案 3 :(得分:0)

我认为你的路线有问题。

确保

  

root_path

喜欢,

  

root:to => '家#索引'