0

私の以下のコード

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 が発生した場所:

nil:NilClass の未定義メソッド「base」

抽出されたソース (行 #1 付近):

1: insert_tag view_factory.layout

何か案が?ここで何が起こっているのか。スタック トレースが、記述したコード ファイルを指していません。

ここで必要なのは、 @topic が存在する場合、ビューをデフォルトのものにレンダリングしたいということです。

4

1 に答える 1

0

superこのシナリオは、コントローラー アクションの最後の行として呼び出して動作しています。

Super はデフォルト ビューをレンダリングします。

于 2012-12-23T09:47:09.227 に答える