2011-12-08 3 views
6

Sto usando https://github.com/sferik/rails_admin per gestire la mia interfaccia di amministrazione.RailsAdmin - Personalizzazione dei propri filtri

E 'possibile filtrare il vostro modello in base alle colonne attuali che esiste in questo modello (id, created_at ecc)

voglio essere in grado di aggiungere filtri personalizzati per le associazioni.

Ad esempio:

Quando sto esplorando il modello di "città" Voglio essere in grado di visualizzare solo le città che dispongono di uno o più progetti.

Potrei farlo aggiungendo una nuova colonna alle città, chiamata has_projects come booleano che verrà impostato su true quando ci sono 1 o più progetti associati, ma credo che ci debba essere un modo più pulito per creare la tua abitudine filtri?

+0

Vedi https://stackoverflow.com/questions/26180943/in- rails-admin-how-can-i-filter-on-an-count-count –

risposta

-1

Di recente ho consultato lo the docs di recente, non credo che esista la funzionalità per gestirlo in modo più elegante.

+0

Cura di espandere su quello? Il solo collegamento ai documenti è di scarsa qualità. – XanderStrike

2

Puoi provare a usare enum. Vedere https://github.com/sferik/rails_admin/wiki/Enumeration

che ho usato per belongs_to associazione, come segue:

field :partner_id, :enum do 
    enum do 
    Partner.all.collect {|p| [p.name, p.id]} 
    end 
end 

E in vista elenco, aggiunsi:

list do 
    filters [:partner_id] 
    ... 
end  
+4

Questo non sembra essere applicabile alla domanda. Stai dando i possibili valori per filtrare/selezionare per un campo di database esistente, ': partner_id'. L'OP chiede di filtrare in base a una query: "mostrami le città con 1 o più progetti associati". –