activeadmin和has_many关系

时间:2013-09-11 23:42:07

标签: ruby-on-rails-3.2 activeadmin has-many

我确定答案就在那里,但我似乎找不到它。所以,我提前道歉。

我有一个功能完善的非常基本的Active Admin界面,可以管理一些简单的模型。

然后,我去添加了几个具有has_many关系并打破了大部分页面的模型。

AA现在抛出:

undefined method `captures' for nil:NilClass

访问由:

创建的“体育”标签时
rails g active_admin:resource sport

我尝试添加的模型是:

class Sport < ActiveRecord::Base
  attr_accessible :name

  has_many :matches
  accepts_nested_attributes_for :matches
end

我的AA sport.rb是空的:

ActiveAdmin.register Sport do

end

[编辑]

对于它的价值,我发现问题出现在AA索引页面的过滤器面板中。如果我使用下面的代码禁用过滤器,一切正常。

ActiveAdmin.register Sport do
    config.filters = false
end

有什么明显的错误吗?如果需要,我可以发布堆栈跟踪和其他模型定义。

谢谢!

格雷格

1 个答案:

答案 0 :(得分:0)

尝试重写索引操作,如下所示:

ActiveAdmin.register Sport do
  controller do
    def index
      @search = Sport.ransack(params[:q])
      @sports = @search.result(distinct: true).page(params[:page]).per(10).order("created_at desc")
    end
  end
end

https://github.com/ernie/ransack/issues/107