2013-03-25 57 views
1

我在ActiveAdmin视图中的下列代码更新错误:Rails的ActiveAdmin - 重写型号名称

ActiveAdmin.register IdeaAction, :as => "Action" do 
    form do |f| 
    f.inputs do 
     f.input :description 
    end 
    f.actions 
    end 
end 

当我提交我的编辑形式,我得到如下:

NoMethodError in Admin::ActionsController#update 
undefined method `stringify_keys' for "update":String 

由于一旦我删除:as => "Action"覆盖,它一切正常。还有什么我需要告诉ActiveAdmin的名称覆盖?有没有解决方法?

回答

0

看来这里的问题是由ActiveAdmin保留的关键字“Action”。我发现的最佳解决方案是将覆盖放在窗体上(:as => :idea_action):

ActiveAdmin.register IdeaAction, :as => "Action" do 
    form do :as => :idea_action |f| 
    f.inputs do 
     f.input :description 
    end 
    f.actions 
    end 
end