Ruby on rails ActiveAdmin属于路由
我已经用activeadmin gem创建了一个新的应用程序。我想用'bellings_to'方法创建两个嵌套资源,但我得到了一个错误 第一资源Ruby on rails ActiveAdmin属于路由,ruby-on-rails,activeadmin,Ruby On Rails,Activeadmin,我已经用activeadmin gem创建了一个新的应用程序。我想用'bellings_to'方法创建两个嵌套资源,但我得到了一个错误 第一资源 ActiveAdmin.register Project do end 第二资源 ActiveAdmin.register Ticket do controller do belongs_to :project end end 尝试打开neped资源时出错 没有路线匹配[GET]“/admin/projects/1/
ActiveAdmin.register Project do
end
第二资源
ActiveAdmin.register Ticket do
controller do
belongs_to :project
end
end
尝试打开neped资源时出错
没有路线匹配[GET]“/admin/projects/1/tickets”
我不正确的地方是什么?我相信您需要在这里做的是将
归属于:将从控制器块投影到寄存器块(基本上是向上)。如果不起作用,我们可能需要查看模型定义。替换
ActiveAdmin.register Ticket do
controller do
belongs_to :project
end
与
我面临着一个非常类似的错误,这个线程帮助了我很多!我的模型定义是
不完整,我需要添加一个Has\u many关联。首先,将归属
声明移出控制器块。然后,子资源要求您指定“:parent_类”,因此对于您来说,它应该如下所示:
ActiveAdmin.register Ticket do
belongs_to :project, :parent_class => Project
end
谢谢你的帮助。我将此代码移动到寄存器块中,但当我转到/admin/projects/1/tickets
时,我发现另一个错误ActiveAdmin::Resource::BelongsTo::TargetNotFound
我看到此错误没有路径匹配[get]“/admin/projects/1/tickets”
你能发布项目和tickets模型吗(仅仅是定义关系的部分,我不需要业务逻辑)?根据这一点,这可能是关系如何定义的问题。第一个模型类项目
,第二个类Ticket
ActiveAdmin.register Ticket do
belongs_to :project, :parent_class => Project
end