activeadmin定制渲染,如果(activeadmin custom render if)

2019-11-01 04:23发布

我下面的代码

ActiveAdmin.register Question do
  belongs_to :topic, :optional => true

  controller do
    def index
      @topic = Topic.find_by_id params[:topic_id]
      if @topic
        @questions = @topic.questions
        render 'settings/questions/_by_admin', :layout => 'active_admin'
        return
      end
    end
  end
end

是抛出

 NoMethodError in Admin/questions#index

显示

/home/amol/.rvm/gems/ruby-1.9.2-p290@xxx/gems/activeadmin-0.5.0/app/views/layouts/active_admin.html.arb其中线#1提出:

未定义的方法`基地”的零:NilClass

提取的源(围绕线#1):

1: insert_tag view_factory.layout

任何想法? 这里发生了什么事。 堆栈跟踪不指向任何我编写的代码文件。

我想在这里,如果@topic是存在,那么我想呈现我的看法否则默认的。

Answer 1:

我有这样的情况下工作打电话给super作为控制器动作的最后一行。

超级会使你的默认视图。



文章来源: activeadmin custom render if