Convertire una stringa in un nome di classe
31 Mag 2008Categoria: Ruby on Rails Autore: Filippo
Vi sarà sicuramente capitato in una fase di programmazione avanzata di voler convertire una semplice stringa in un nome di classe. Facciamo un esempio pratico:
Tramite una normalissima form vogliamo passare il nome di un modello come parametro ad un metodo che si occupi poi di richiamare il metodo find appropriato? niente di più semplice in pieno stile ruby
stringa = params[:model]
stringa.camelize.constantize.find(:all)
Camelize si occupa di rendere la stringa in formato corretto: “il mio modello” diventa “IlMioModello”
Constantize invece cerca una costante con il nome corrispondente alla stringa già “cammelizzata” (cioè maiuscole/minuscole).
Di seguito i link al mio server con la documentazione relativa:
Documentazione di camelize
Documentazione di constantize
E’ tutto!
Tag: camelize, constantize, nome di classe, Ruby on Rails, stringa

















































