我尝试执行以下迁移命令:
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!'
如何纠正这些错误?
我尝试执行以下迁移命令:
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!'
如何纠正这些错误?
这是由不正确的路由引起的 - 请检查您的 config/routes.rb 检查是否有任何路由定义不正确
您遇到的问题与路线有关。
检查您的routes.rb
,并且有一个控制器及其操作的映射。因此,如果它不正确,错误将被抛出为:
`default_controller_and_action': missing :action (ArgumentError)
例如:
常见的错误-
root :to => "home/index"
正确的方式-
root :to => "home#index"
查看帖子:默认控制器和操作。
如..所示,
该错误表示默认控制器缺少操作。
我认为您的路线有问题。
确保
根路径
喜欢,
根 :to => 'home#index'
编辑:@Ved Prakash 的答案是正确的,经过更多研究后我发现我的答案不够好。我在这里只留下 Rails 4.x 的相关说明
当您开始使用 Rails 4.x 时,您有一个添加引用的新方法:
rails 生成迁移 AddUserRefToProducts user:references