2012-11-25 76 views
0

我正在創建一個自定義操作,用作ActiveAdmin的展示視圖,是否有任何助手可以在部分上重用,以便我可以重新使用ActiveAdmin展示視圖模板。ActiveAdmin - 重複使用展示表單的自定義操作

我認爲顯示動作,你可以自定義與attributes_tables的安排,有沒有類似的東西我可以重用的視圖?

show do |ad| 
    attributes_table do 
    row :title 
    end 
end 

這裏是我的自定義操作:

member_action :read do 
    @app = App.find(params[:id]) 
    #Rendering Partial 
end 

回答

1

你可以在兩個視圖中使用諧音,有黑客攻擊的一位:

app/admin/apps.rb

ActiveAdmin.register App do 
    show do 
    @app = App.find(params[:id]) 
    render "show", context: self 
    end 

    member_action :read do 
    @app = App.find(params[:id]) 
    end 
end 

app/views/admin/apps/_show.builder

context.instance_eval do 
    div do 
    panel "Address" do 
     attributes_table_for @address do 
     row :address_line_1 
     end 
    end 
    active_admin_comments_for @address 
    end 
end 

app/views/admin/apps/read.builder

render "show", context: self 

編輯:使工作!

編輯2:發表評論工作!

+0

感謝您的回覆。我試過你的解決方案,但它出現了「未定義的方法'attributes_table'錯誤」。我認爲你在渲染「表演」,背景:自我方面存在錯誤。 – TonyTakeshi

+0

啊,對。我想它應該閱讀「attributes_table_for」。儘管渲染沒有錯字:)再次嘗試用我更新的答案。 –

+0

我試過了,但是這次拋出了這個錯誤「未定義的方法'attributes_table_for'。 – TonyTakeshi

相關問題