Creare una pagina

L'architettura MVC

Rails usa un'architettura di tipo Model - View - Controller:

Vogliamo creare una semplice pagina HTML di benvenuto.
Per fare questo avremo bisogno di:
  • una rotta: prende la richiesta dell'utente e la indirizza al controller
  • un controller: contiene una serie di azioni (nel nostro caso solo l'azione index)
  • un'azione: svolge le operazioni logiche necessarie (nel nostro caso si occupa solo di mostrare la vista)
  • una vista (prende i dati ricevuti dal controller e assembla l'HTML da inviare al browser dell'utente)

Il controller

Creiamo un controller Home:
Vengono creati:
  • un file per il controller (app/controllers/home_controller.rb)
  • una cartella per le sue viste (app/views/home)

 Definiamo l'azione index nel controller:

La vista

creiamo la vista corrispondente:


La rotta

Configuriamo una rotta che permetta all'utente di raggiungere l'azione che abbiamo creato qui sopra:

Come funziona la rotta

Quando l'utente richiede la pagina /home
la sua richiesta viene inoltrata a home#index (controller home, azione index)

Possiamo ora visitarla nel browser:
 

La rotta di default

Possiamo fare in modo che quando l'utente non specifica una particolare pagina, venga aperta la nostra pagina di benvenuto: stiamo di fatto creando la home page dell'applicazione:

Adesso la pagina che abbiamo creato è raggiungibile sia quando l'utente scrive l'indirizzo
http://127.0.0.1:3058/home/

 che quando scrive semplicemente
http://127.0.0.1:3058/


Denominare le rotte

Può essere utile dare un nome alle rotte più importanti: