2016-02-28 45 views
0

我在Rails測試項目中使用Rails 4.2.5和最新版本的ActiveAdmin。我想重新命名ActiveAdmin中的一個參數,就像我可以使用the name of the class一樣,但我還沒有找到一個簡單的方法來做到這一點。重命名ActiveAdmin中的參數/字段

讓我們假設以下模型:

Employee 
    name:string 
    role:string 

我想這ActiveAdmin顯示了「角色」參數設置爲「貨物」(「角色」在巴西葡萄牙語)在所有管理面板。

我目前使用以下解決方法:

ActiveAdmin.register Employee, as: "empregado" do 

    permit_params :name, :role 

    # Rename the desired parameter in /admin/empregados 
    index do 
     column "Nome", :name 
     column "Cargo", :role 
     actions 
    end 

    # Rename the desired parameter in /admin/empregados/new 
    form do |f| 
     inputs do 
      input :name, label: "Nome" 
      input :role, label: "Cargo" 
     end 
     actions 
    end 

    # Rename the desired parameter in /admin/empregados/[:id] 
    show do 
     attributes_table do 
      row :id 
      row("Nome"){ empregado.name } 
      row("Cargo"){ empregado.role } 
      row("Criado em"){ empregado.created_at } 
      row("Atualizado em"){ empregado.updated_at } 
     end 
    end 
end 

這工作,但它是相當手冊,我不認爲這是「Railsistic方式」做事。此外,還有一些地方的模型並沒有改名,如「過濾器」的搜索: enter image description here

我想找到一個簡單的方法,無需複製此列/參數在所有管理面板重命名碼。有辦法做到這一點?顯示模型相關的東西的時候,所以你的情況,你可以只添加這樣的事情你es.yml文件

回答

1

ActiveAdmin使用的ActiveRecord的翻譯:

es: 
    activerecord: 
    models: 
     employee: 
     one: Empregado 
    attributes: 
     employee: 
     name: Nome 
     role: Cargo 
     created_at: Criado em 
     updated_at: Atualizado em 
+0

謝謝你,這個工作! – Paladini