Ruby on rails 3 在activerecord呈现时属于\u,因为找不到

Ruby on rails 3 在activerecord呈现时属于\u,因为找不到,ruby-on-rails-3,activerecord,activeadmin,Ruby On Rails 3,Activerecord,Activeadmin,我一定是在做傻事。我正在使用rails 3.2.19和activeadmin 0.6.0。基本上,我试图通过一个侧栏向下浏览一个“属于”关联。我已经用文本装置加载了我的数据库,并且可以在rails控制台上深入查看关联,即: 2.1.1 :004 > Employee.first.blogposts.first Employee Load (0.1ms) SELECT "employees".* FROM "employees" LIMIT 1 Blogpost Load (0.1ms)

我一定是在做傻事。我正在使用rails 3.2.19和activeadmin 0.6.0。基本上,我试图通过一个侧栏向下浏览一个“属于”关联。我已经用文本装置加载了我的数据库,并且可以在rails控制台上深入查看关联,即:

2.1.1 :004 > Employee.first.blogposts.first
Employee Load (0.1ms)  SELECT "employees".* FROM "employees" LIMIT 1
Blogpost Load (0.1ms)  SELECT "blogposts".* FROM "blogposts" WHERE "blogposts"."employee_id" = 615722309 LIMIT 1
=> #<Blogpost id: 298486374, title: "Mine too", body: "Can we try markdown?", employee_id: 615722309, created_at: "2014-07-25 03:27:14", updated_at: "2014-07-25 03:27:14"> 
2.1.1 :005 > 
我还可以在执行rake路由时看到指定的路由

admin_employee_blogposts GET        /admin/employees/:employee_id/blogposts(.:format)              admin/blogposts#index
“员工”页面上的链接(在“员工资源”中定义的链接)呈现时没有错误,但是当我单击它时,我收到:

Admin::BlogpostsController#索引中的NoMethodError nil:NilClass的未定义方法“find” 参数: {“雇员id”=>“61572239”}

浏览器中指定的URL为:

http://localhost:3000/admin/employees/615722309/blogposts
有人知道如何解决这个问题吗?我确信所讨论的特定员工ID有博客帖子,正如我使用rails控制台所演示的那样。任何人能提供的任何帮助都将不胜感激

谢谢,

Dan Sullivan

尝试使用以下方法:

ActiveAdmin.register Blogpost do
  belongs_to :employee, parent_class: Employee
end

您能发布控制器的
索引
方法吗?嗨,帕万,谢谢您的回复。实际上,我的控制器没有索引方法。实际上,我甚至没有一个控制器(应用程序控制器除外)存在于/admin目录之外。我只为员工和博客帖子创建模型。员工管理资源页面在没有控制器的情况下呈现良好。如果你指的是“Activeadmin.register Employee do”代码块,那么我所发布的就是我所拥有的全部内容。再次感谢您的帮助。我指的是您的
管理员::BlogpostsController的
索引操作
。您的操作是否正确。出于理智的考虑,我已将我的完整解决方案发布到github。索引操作由继承的资源通过活动管理提供。能帮我排除故障的是回溯。谢谢你,先生。这不在文档中,尽管它100%修复了我的问题。它没有文档,因为它是一个bug。我曾考虑提交一份文件,但已经有一份:
http://localhost:3000/admin/employees/615722309/blogposts
ActiveAdmin.register Blogpost do
  belongs_to :employee, parent_class: Employee
end