2012-01-05 19 views

Respuesta

17

lo descubrió, gracias!

filter :customer, :collection => proc {(Customer.all).map{|c| [c.company_name, c.id]}}

+1

Gracias por publicar. Tenía esta pregunta exacta. – jfedick

+1

¿En qué archivo tengo que poner esto? No funciona en el modelo – Mexxer

+0

En la aplicación/admin/your_model_name.rb;) – Kulgar

4

no estoy seguro de que lo entendamos, pero probablemente deba definir el método de to_s dentro de su clase de Cliente, p.

class Customer 

    def to_s 
    self.company_name 
    end 

end 

que sería más fácil si algún código compartido

1

Para hacer que la pantalla ActiveAdmin menú de selección tratar adecuadamente en Model.rb: - ​​

alias_attribute: nombre,: category_name

2
class Customer 

    def display_name 
    self.company_name 
    end 

end 

Definición display_name en lugar de to_s funciona mejor ...

  • to_s pueden ser llamados automáticamente por otro objec ts.
  • display_name sólo afecta ActiveAdmin

También puede definir:

show :title => :display_name 

Esto hará que su company_name aparecen como el título de las páginas de vista en lugar de #x Company.

+0

Para las columnas de asociación hacemos una conjetura sobre qué mostrar por llamando a los siguientes métodos en el siguiente orden: : display_name,: full_name,: name,: username,: login,: title,: email,: to_s Esto se puede personalizar en config/initializers/active_admin.rb. – barancw

Cuestiones relacionadas