Inseirmento campo di ricerca per visualizzare una lista

Salve a tutti,
Vorrei creare una lista degli utenti in cui posso vedere alcune
informazioni
la tabella da me creata e’ user (id,utente, pwd, ipaddress, interno ecce
ecc)
quindi tramite scaffold mi sono creato il mio bravo gestionale
nella index riesco a vedere tutti gli utenti ma qui stesso vorrei
aggiungere
un campo ricerca per utente ., dove mettendo per esempio “gio%” in una
input e premendo sul pulsanter “Cerca” mi dovrebbe visualizzare gli
utenti che soddisfano tale condizione .
Mi potreste aiutare ??

Grqazie in anticipo per chi si vuole prendere questa briga !!

Saluti
fdibenedetto72

Puoi usare la gem will_paginate (v.
http://wiki.github.com/mislav/will_paginate/) che permette di
restituirti su piu’ pagine la lista dei tuoi record.
in particolare a questa pagina
http://wiki.github.com/mislav/will_paginate/simple-search

si spiega come fare quello che serve a te (con o senza paginazione), in
particolare la questione relativa al GET/POST.

Ciao,
i.

pui guardare questo railscast (un po’ datato) per farti un’idea:

fondamentalmente si tratta di aggiungere una form nella index, che punta
a qualche azione del controller. il controller farà comunque la render
della index, popolandola con i risultati.

volendo, anzichè creare una nuova azione, potresti sfruttare l’azione
index e mettere qualcosa del genere:

def index
if params[:search] # avrai una form di nome search
@users = User.find_by_lastname(params[:search][:lastname])
else
@users = User.all
end
end

il codice è scritto al volo, giusto per mostrarti la logica,
probabilmente avrai bisogno di fare una find diversa, impostando una
condizione LIKE, ma il funzionamento non si discosta molto :wink:

ciao,
A.

Il 26/07/2010 12:53, Fabio Di benedetto ha scritto:

IL suggerimento è corretto, tranne forse per la sicurezza.
Attenzione a passare direttamente la stringa di ricerca con la notazione
SQL, il sistema sarebbe prono a
vulnerabilità.All’inizio è ok ma poi cerca di rendere il sistema un po piu sicuro almeno
quotando l’espressione in ingresso.
Non ricordo se c’era un railscast in proposito.


Raoul J.P. Bonnal
Life Science Informatics
Integrative Biology Program
Fondazione INGM
Via F. Sforza 28
20122 Milano, IT
phone: +39 02 006 623 26
fax: +39 02 006 623 46