Πριν:
Η λειτουργία που έδινε τη δυνατότητα στον admin να ψάξει τους εγγεγραμμένους χρήστες και να δει αναλυτικά τα στοιχεία τους χρειαζόταν αρκετή διαμόρφωση. Αρχικά για να βρεις ένα χρήστη έπρεπε να ξέρεις ακριβώς το username του ή το email του. Δεν μπορούσες να γράψεις μέρος του username του. Επίσης τα αποτελέσματα εμφανιζόντουσαν σε raw μορφή δηλαδή έτσι όπως ακριβώς τα διάβαζε η rails χωρίς καμία απολύτως μορφοποίηση. Αυτό τα καθιστούσε τραγικά δύσκολο να διαβαστούν. Αυτά φαίνονται και στις παρακάτω εικόνες
Μετά:
Όπως βλέπουμε στις παρακάτω εικόνες πλέον μπορούμε να κάνουμε full text search οπότε δεν χρειάζεται να ξέρουμε ακριβώς το username/email για να βρούμε ένα χρήστη. Επίσης τα αποτελέσματα οργανώθηκαν σε expandable lists. Ακόμα η εμφάνιση δεν είναι τέλεια αλλά νομίζω είναι πολύ καλύτερα από πριν!
Κώδικας:
Αρχικά όσον αφορά την αναζήτηση η μέθοδος user_search στον adminController διαμορφώθηκε ως εξής (Χρησιμοποιώντας την δυνατότητα της mySQL βάσης για full text search μέσω της εντολής LIKE):
Μετά φτιάχτηκε ένα partial view στο οποίο περνάμε το collection @users που επιστρέφει η μέθοδος και, μας δημιουργεί τη λίστα.
το css και το javascript τα οποία δίνουν τη δυνατότητα στη λίστα να είναι expandable είναι τα εξής: