Rails Best Practices 3: Aumentare la leggibilità dei controller

[POST AGGIORNATO IL 19/07/2010 - 15:45] Proseguendo la nostra analisi delle Rails Best Practices oggi vediamo altri due accorgimenti per rendere più leggibili i metodi del controller.1. Metodi nel modelSupponiamo di avere la classica anagrafica utenti e che sia definito un utente admin che ha la possibilitò di attivare/disattivare gli altri utenti.Scrivendo il metodo deacti...

Leggi tutto

Rails Best Practices 2: Spostare la logica nel model

Continuiamo la nostra analisi delle Rails Best Practices. Nel post precedente abbiamo visto Named Scope, Model Association e Scope Access come metodi per spostare la logica dell’applicazione dai controller ai model. Proseguendo nella stessa direzione oggi prendiamo in esame l’utilizzo di Model Callback e di Virtual Attribute.1. Virtual AttributeSupponiamo di avere una tabella di anagrafica clienti definita come segue123456create_table "clie...

Leggi tutto

Rails Best Practices: introduzione

Ho deciso di dedicare una serie di post alle Best Practices in Rails perché ritengo sia importante diffonderle e condividerle al fine di migliorare sempre il proprio modo di programmare.La scrittura di questi post sarà anche un occasione per me di approfondire meglio le mie conoscenze, per cui vi invito fin da ora a seguirmi in questo percorso e a contribuire con i vostri commenti.Questo primo post è ...

Leggi tutto

Validazione Parziale in Rails

Capita talvolta di dover implementare la creazione/modifica di un model suddivisa su più di una form. Un caso abbastanza classico può essere una form di registrazione suddivisa in due step oppure la realizzazione di un wizard guidato composto da diverse pagine.Questa situazione ci pone davanti ad un problema: come e quando effettuare la validazione dei dati?La prima idea che può venire in mente è di dem...

Leggi tutto

Accedere a current_user negli step definitions di Cucumber

Cucumber fornisce un ottimo strumento per applicare BDD durante lo sviluppo di applicazioni Rails.A volte è necessario popolare il database con background data, e a volte è necessario accedere al metodo1current_user.Generalmente1current_userè un metodo definito nella classe1ApplicationControllero in un modulo associato alla gestione utenti. Quindi non è accessibile dagli scenari di Cucumber: ecco come condividere il metodo1current_userin tutte le classi di step definition.1...

Leggi tutto

Rails Authlogic + Subdomain_fu Template

Il secondo template Rails proposto da “DevInterface”:http://devinterface.com e rilasciato sotto licenza Rails MIT è Rails Authlogic + Subdomain_fu Template.Rails Authlogic + Subdomain_fu TemplateQuesto template viene utilizzato come struttura di base per ogni applicazione Rails (2.3) che prevede un meccanismo di autenticazione con il supporto per sottodomini.Per installare e lanciare questo template, seguite le seguenti istruzioni:12...

Leggi tutto

Rails Startup Template su github

Ciao a tutti.Oggi vorrei mostrare la prima delle due applicazioni Rails scritte da DevInterface.Sono entrambe hostate su GitHub e rilasciate con licenza Rails MIT. Quindi sentitevi liberi di clonarle/forkarle/patcharle.Rails Startup TemplateQuesto template vi permette di creare rapidamente una nuova applicazione Rails (2.3) con supporto per l’autenticazione.Per usarlo, basta semplicamente indicare l’opzione -m quando si crea la nuova...

Leggi tutto