Rails 路由错误:带有嵌套资源的未初始化常量

胡适

由于 rake 路线给出了我访问过的确切路线,页面显示
Routing Error uninitialized constant TasksController Did you mean? AppsController

routes.rb我写

  resources :users do 
    resources :tasks do
      collection do
        post 'tasks-info', to: 'users/tasks#tasks_info', format: 'json'
      end
    end
  end

tasks_controller.rbapp/controllers/users文件夹下

def show
end

show.html.slim正在app/views/users/tasksfoler
我访问的URL是http://localhost:3000/users/1/tasks/1rake routes包括
user_task_path GET /users/:user_id/tasks/:id(.:format) tasks#show

我真的不知道错误来自哪里,真的很感激任何帮助!

更新:问题已解决,如果您有同样的问题,请参考下面的评论(我根据自己的理解进行了总结,但不确定是否完全正确)!或者查看下面的答案,因为工程师和斯科特的答案都应该有效。

斯科特·马修曼

关键是rails routes告诉你的是:

user_task_path  GET /users/:user_id/tasks/:id(.:format)  tasks#show

最后一部分告诉您它正在控制器中寻找show方法tasks——即TasksController在控制器层次结构的顶层。

因此,您需要将其放置TasksControllerapp/controllers/users/tasks_controller.rb而不是放置app/controllers/tasks_controller.rb

控制器的“嵌套”由params包含:user_id调用:id对象处理TasksController#show

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Rails 5的多个嵌套属性,没有路由错误未初始化的常量站点

Rails的路由错误-未初始化的常量SubscribersController

Rails:路由错误未初始化的常量 RegistrationsController

Rails路由“未初始化的常量CoursesController”

Rails路由:未初始化的常量ClanController

Rails-Sidekiq错误未初始化的常量

Rails未初始化的常量名称错误

Rails显示错误“未初始化的常量URI :: Generic”

Ruby on Rails“未初始化的常量”错误

名称错误“未初始化的常量”ruby on rails

NameError:未初始化的常量(rails)

Rails路由错误“未初始化的常数”

Rails,未初始化的常量Rails入门

在Rails中导入csv文件时获取未初始化的常量Student :: Roo错误

Windows上未初始化的常量Sprockets :: SassCacheStore错误(了解ruby on rails书)

Rails has_many通过:(多对多关系)错误未初始化的常量Group :: Keywords

Rails在命令行中未初始化的常量错误

Rails 测试错误,NameError:未初始化的常量 User::FILL_IN

未初始化的常量ActionView :: CompiledTemplates :: FB Ruby on Rails

Ruby on Rails 5未初始化的常量ApplicationRecord(NameError)

耙子流产了!未初始化的常量Rails :: SubTestTask

Rails has_many:通过未初始化的常量

Rails:NameError(未初始化的常量UserSerializer)

Rails:NameError:未初始化的常量Bootsnap :: CompileCache :: ISeq

rails 未初始化的常量 Class::News (NameError)

Rspec / Rails:未初始化的常量ActiveSupport :: Autoload(NameError)

未初始化的常量Twilio :: Rest Rails

Rails / Factory Girl:未初始化的常量FactoryGirl(NameError)

rails 5迁移未初始化的常量