2016-03-03 121 views
1

我試圖在我的rails admin顯示頁面中顯示訪問者的名字。 我做這樣說:rails_admin顯示對象的名稱,而不是ID

field :visitors 

,但我得到顯示以下內容:

Visitor #7 and Visitor #8 

我一直試圖做這樣的事情有相當值:

configure :visitors do 
    pretty_value do 
    bindings[:object].visitors.each do |visitor| 
     visitor.full_name 
    end 
    end 
end 

但它顯示了我對象的細節:

[#<Visitor id: 7, first_name: "John", last_name: "Smith", created_at: "2016-03-03 10:23:34", updated_at: "2016-03-03 10:23:34", booking_id: 7>, #<Visitor id: 8, first_name: "Bob", last_name: "Smith", created_at: "2016-03-03 10:23:34", updated_at: "2016-03-03 10:23:34", booking_id: 7>] 

我只是想顯示是這樣的:

John Smith and Bob Smith 

我怎樣才能做到這一點?

+0

這個環節應該是有幫助http://stackoverflow.com/questions/11658281/rails-admin-display-name-instead-of- ID –

+0

@Udaykumardas,謝謝你的迴應。是的,這個鏈接很好,我以前檢查過它。但它回答了,如何顯示一個對象的名稱。我有很多對象/訪問者。 –

+0

會改變'訪客'類管理配置幫助'object_label_method'? (這是假設你想要一個'Visitor'對象用你的'full_name'在你的系統中的任何地方表示) –

回答

1

好吧,我發現用地圖解決方案:

bindings[:object].visitors.all.map {|v| v.full_name}.join(', ') 
+0

是的,你的修正是正確的,':each'返回原始數組,而不是結果數組。 –

+0

@IvanKolmychek,謝謝你的回覆) –

相關問題