2013-09-24 41 views
1

我有一個帶有ActiveAdmin gem的rails 3應用程序。我製作了一個page.rb文件,顯示管理員可以更新的網站靜態頁面的列表。爲了特定的需要,我提出了海關意見。除非我嘗試更新頁面,否則一切正常。我收到錯誤The action 'update' could not be found for Admin::PagesController。但是,我的page.rb文件擁有更新方法!有人可以解釋我做錯了什麼嗎?無法找到Admin :: PagesController的動作'update'

我page.rb文件:

ActiveAdmin.register_page 'Pages' do 
    content only: :index do 
    render 'index' 
    end 

    content only: :edit do 
    render partial: 'edit' 
    end 

    controller do 
    layout 'active_admin' 

    def index 
     @search = Page.includes(:translations).where("page_translations.locale='fr'").metasearch(params[:search]) 
     @pages = @search.page params[:page] 
    end 

    def edit 
     @page = Page.find params[:id] 
    end 
    end 

    def update 
    @page = Page.find(params[:id]) 
    @page.update_attributes(params[:page]) 
    redirect_to(admin_path :notice => 'Coool') 
    return 
    end 
end 

這提交頁面表單:

<%= semantic_form_for([:admin, @page], url: admin_page_path, method: :put) do |f| %> 
    <%= f.inputs do %> 
    <%= f.input :permalink %> 
    <%= f.globalize_fields_for :fr do |g| %> 
     <%= g.text_field :name %> 
     <%= g.text_area :content %> 
    <% end %> 
    <%= f.globalize_fields_for :en do |g| %> 
     <%= g.text_field :name %> 
     <%= g.text_area :content %> 
    <% end %> 
    <% end %> 
    <%= f.button "Save" %> 
    <%= link_to("Cancel", admin_pages_path) %> 
<% end %> 

回答

1

update方法不是controller塊內。試着把它移動幾行。

+0

謝謝,我瞎了... –

+0

一個錯位'結束',下面的一切都被忽略......感謝這個 – brntsllvn