SlideShare a Scribd company logo
Lezione guidata Ruby on Rails  1)  action :new Prof. Silvano Natalizi, maggio 2009 Esercitazione VA Liceo Tecnico
Creare l’applicazione Creare l’applicativo, ad esempio: cinema,  rails cinema cd cinema Creare la prima tabella relazionale di nome multiSala con i campi nome, numerosale, località ruby script/generate model multisala nome:string numerosale:integer localita:string rake db:migrate Creare il controllore cinema (al plurale) e il metodo new ruby script/generate controller multisalas new
Scrivere nel controllore cinemas le istruzioni del metodo new  Aprire con un editor (programmer’s notepad) il controllore multisalas ed inserire le istruzioni del metodo new e salva def new  @multisala=Multisala.new end
Scrivere la form new.html.erb Scrivere la form new.html.erb e salvarla nella cartella view/cinemas
Lanciare l’applicativo Mandare in esecuzione il server ruby script/server Aprire con firefox una pagina web con url localhost:3000/multisalas/new Verificare che sia presente la form per l’inserimento dei dati Verificare che premendo il bottone create si abbia l’errore  Unknown action L’errore è ovvio, ancora non abbiamo implementato il metodo create !
Scrivere il metodo create Scrivere il metodo create nel controllore multisalas def create @multisala=Multisala.new(params[:multisala]) @multisala.save redirect_to :action=>’new’ end
Inserire dei dati nella form e premere il bottone create Inserire dei dati nella form e premere il bottone create Verificare che venga reindirizzata la medesima pagina (con la medesima form di input) Inserire altri dati
Chiudere il server e verificare che i dati siano presenti nel database Chiudere il server ctrl_c cd db Aprire il database development.sqlite3 sqlite3 development.sqlite3 Leggere tutti i campi e tutti i record della tabella multisalas select * from multisalas; Uscire dal database  .exit
Inserire nel modello i validatori Aprire il modello ed inserire i validatori e salvare class Multisala < ActiveRecord::Base  validates_presence_of  :nome validates_presence_of  :numerosale  validates_presence_of  :localita  validates_numericality_of  :numerosale end
Inserire nella new.html.erb il messaggio Inserire nella form new.html.erb la riga: <%= f.error_messages %> <h1>new.html.erb</h1> <% form_for(@multisala, :url=>{:action=>'create'}) do |f| %>  <%= f.error_messages %>  <p><b>Nome</b><br /><%= f.text_field :nome %></p>  <p><b>numero sale</b><br /><%= f.text_field :numerosale %></p>  <p><b>Localita'</b><br /><%= f.text_field :localita %></p>  <p><%= f.submit &quot;create&quot; %> </p> <% end %>
Modificare il metodo create del controllore multisalas Modificare il codice al seguente modo: def create  @multisala=Multisala.new(params[:multisala]) if @multisala.save redirect_to :action=>'new’ else  render :template=>&quot;multisalas/new“ end  end
Verificare gli errori dei validatori Lanciare il server (ruby script/server) Nella form di input non inserire nessun dato e premere il bottone create. Verificare gli errori di validazione Inserire tutti i dati, ma nel ‘numero sale’ mettere una stringa anziché un numero. Verificare l’errore di numericità Infine inserire tutti i dati in maniera corretta e verificare che non ci sia più nessun errore
Continua con l’azione ‘show’

More Related Content

What's hot (7)

PDF
Introduzione alla programmazione android - Android@tulug lezione 2
Ivan Gualandri
 
PPT
Lezione jsp pdatabase crud quintaparte
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PPTX
Creare Suite di Test Automatici intelligenti con Selenium IDE
Stefano Trojani
 
Introduzione alla programmazione android - Android@tulug lezione 2
Ivan Gualandri
 
Lezione jsp pdatabase crud quintaparte
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Creare Suite di Test Automatici intelligenti con Selenium IDE
Stefano Trojani
 

Similar to Lezione Guidata Ruby On Rails Insert (6)

PPT
Esercitazioneguidata Rubyon Rails Lista
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PDF
Sviluppo web con Ruby on Rails
jekil
 
PPT
Esercitazioneguidata Collegamento Uno Molti
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
ZIP
Introduzione a Ruby On Rails
Luca Mearelli
 
Esercitazioneguidata Rubyon Rails Lista
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Sviluppo web con Ruby on Rails
jekil
 
Esercitazioneguidata Collegamento Uno Molti
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Introduzione a Ruby On Rails
Luca Mearelli
 
Ad

More from Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA (20)

PPTX
Procedimentodisoluzione fisicaparticelle
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PPTX
Proc solescercaparabolastaccasegmentosuassex
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PPT
Problema fisica compito in classe
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PPT
Esercizi sulla energia meccanica
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PPT
Lezione Blog Didattici 27 4 2010
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PDF
Lezione dappubblicaresulblogvale
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PPT
Lezione programmazione database con java Servlet - quarta parte
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PPT
Natalizi thyristors seconda lezione
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PPT
Lezione anonymousinnerclass
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PPT
Lezione Android prima parte
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
PPT
Lezione Servlet Parte Seconda
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Procedimentodisoluzione fisicaparticelle
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Proc solescercaparabolastaccasegmentosuassex
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Problema fisica compito in classe
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Esercizi sulla energia meccanica
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Lezione Blog Didattici 27 4 2010
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Lezione dappubblicaresulblogvale
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Lezione programmazione database con java Servlet - quarta parte
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Natalizi thyristors seconda lezione
Silvano Natalizi - ITIS ALESSANDRO VOLTA PERUGIA
 
Ad

Recently uploaded (20)

PDF
Galatians Verse By Verse 1st Edition Grant R Osborne
hndmlbx602
 
PDF
Organizational Behaviour Concepts Controversies Applications Canadian 8th Edi...
beofewb9023
 
PDF
Anfibios_Ra_sapo_e_cobracega_Jackson_Jessiara_Igor.pdf
JacksonOliveira795359
 
PDF
Core Concepts of Accounting Information Systems 14th Edition Simkin Test Bank
uxtjmnkih5329
 
PDF
Test Bank for Database Concepts, 5th Edition: Kroenke
zzpnrfsj4905
 
PDF
Macroeconomics Principles Applications and Tools 8th Edition OSullivan Soluti...
dvbnrnua706
 
PDF
Innovation and Entrepreneurship 3rd Edition Bessant Test Bank
uwkwdnmq903
 
PDF
Biotechnology Of Aquatic Animals 1st Edition R Nagabhushanam Editor
mcbyxelqr492
 
PDF
Scripture Discernment Johnson Luke Timothy
avzoldx633
 
PDF
Vaccine Design Methods and Protocols Volume 2 Vaccines for Veterinary Disease...
xzofwvwpx542
 
PPTX
Camillo de Lellis, Fondatore dei Camilliani, (1550 – 1614).pptx
Martin M Flynn
 
PDF
Charlees Choices Dreamcatchers Mc Liberty Parker
nkqnohnveu1806
 
PDF
Becker's World of the Cell 8th Edition Hardin Test Bank
umungkh255
 
PDF
(eBook PDF) Organizational Behaviour Concepts, Controversies, Applications, 8...
oquupwilm583
 
PDF
Light Vehicle Diesel Engines 1st Edition Halderman Solutions Manual
nijwccffzp991
 
PPTX
Sant'Enrico II, (972-1024), Imperatore del Sacro Romano Impero.pptx
Martin M Flynn
 
PDF
Fondamenti Di Botanica Generale. Teoria E Pratica In Laboratorio Simonetta Pa...
wsjixmfejv1105
 
PDF
Microelettronica 5th Edition Richard C. Jaeger
ierumjlbao1610
 
PDF
Macroeconomics 13th Edition Parkin Test Bank
dfehpsepb7021
 
PDF
The Digital Mindset What It Really Takes To Thrive In The Age Of Data Algorit...
oaezbvecjo3157
 
Galatians Verse By Verse 1st Edition Grant R Osborne
hndmlbx602
 
Organizational Behaviour Concepts Controversies Applications Canadian 8th Edi...
beofewb9023
 
Anfibios_Ra_sapo_e_cobracega_Jackson_Jessiara_Igor.pdf
JacksonOliveira795359
 
Core Concepts of Accounting Information Systems 14th Edition Simkin Test Bank
uxtjmnkih5329
 
Test Bank for Database Concepts, 5th Edition: Kroenke
zzpnrfsj4905
 
Macroeconomics Principles Applications and Tools 8th Edition OSullivan Soluti...
dvbnrnua706
 
Innovation and Entrepreneurship 3rd Edition Bessant Test Bank
uwkwdnmq903
 
Biotechnology Of Aquatic Animals 1st Edition R Nagabhushanam Editor
mcbyxelqr492
 
Scripture Discernment Johnson Luke Timothy
avzoldx633
 
Vaccine Design Methods and Protocols Volume 2 Vaccines for Veterinary Disease...
xzofwvwpx542
 
Camillo de Lellis, Fondatore dei Camilliani, (1550 – 1614).pptx
Martin M Flynn
 
Charlees Choices Dreamcatchers Mc Liberty Parker
nkqnohnveu1806
 
Becker's World of the Cell 8th Edition Hardin Test Bank
umungkh255
 
(eBook PDF) Organizational Behaviour Concepts, Controversies, Applications, 8...
oquupwilm583
 
Light Vehicle Diesel Engines 1st Edition Halderman Solutions Manual
nijwccffzp991
 
Sant'Enrico II, (972-1024), Imperatore del Sacro Romano Impero.pptx
Martin M Flynn
 
Fondamenti Di Botanica Generale. Teoria E Pratica In Laboratorio Simonetta Pa...
wsjixmfejv1105
 
Microelettronica 5th Edition Richard C. Jaeger
ierumjlbao1610
 
Macroeconomics 13th Edition Parkin Test Bank
dfehpsepb7021
 
The Digital Mindset What It Really Takes To Thrive In The Age Of Data Algorit...
oaezbvecjo3157
 

Lezione Guidata Ruby On Rails Insert

  • 1. Lezione guidata Ruby on Rails 1) action :new Prof. Silvano Natalizi, maggio 2009 Esercitazione VA Liceo Tecnico
  • 2. Creare l’applicazione Creare l’applicativo, ad esempio: cinema, rails cinema cd cinema Creare la prima tabella relazionale di nome multiSala con i campi nome, numerosale, località ruby script/generate model multisala nome:string numerosale:integer localita:string rake db:migrate Creare il controllore cinema (al plurale) e il metodo new ruby script/generate controller multisalas new
  • 3. Scrivere nel controllore cinemas le istruzioni del metodo new Aprire con un editor (programmer’s notepad) il controllore multisalas ed inserire le istruzioni del metodo new e salva def new @multisala=Multisala.new end
  • 4. Scrivere la form new.html.erb Scrivere la form new.html.erb e salvarla nella cartella view/cinemas
  • 5. Lanciare l’applicativo Mandare in esecuzione il server ruby script/server Aprire con firefox una pagina web con url localhost:3000/multisalas/new Verificare che sia presente la form per l’inserimento dei dati Verificare che premendo il bottone create si abbia l’errore Unknown action L’errore è ovvio, ancora non abbiamo implementato il metodo create !
  • 6. Scrivere il metodo create Scrivere il metodo create nel controllore multisalas def create @multisala=Multisala.new(params[:multisala]) @multisala.save redirect_to :action=>’new’ end
  • 7. Inserire dei dati nella form e premere il bottone create Inserire dei dati nella form e premere il bottone create Verificare che venga reindirizzata la medesima pagina (con la medesima form di input) Inserire altri dati
  • 8. Chiudere il server e verificare che i dati siano presenti nel database Chiudere il server ctrl_c cd db Aprire il database development.sqlite3 sqlite3 development.sqlite3 Leggere tutti i campi e tutti i record della tabella multisalas select * from multisalas; Uscire dal database .exit
  • 9. Inserire nel modello i validatori Aprire il modello ed inserire i validatori e salvare class Multisala < ActiveRecord::Base validates_presence_of :nome validates_presence_of :numerosale validates_presence_of :localita validates_numericality_of :numerosale end
  • 10. Inserire nella new.html.erb il messaggio Inserire nella form new.html.erb la riga: <%= f.error_messages %> <h1>new.html.erb</h1> <% form_for(@multisala, :url=>{:action=>'create'}) do |f| %> <%= f.error_messages %> <p><b>Nome</b><br /><%= f.text_field :nome %></p> <p><b>numero sale</b><br /><%= f.text_field :numerosale %></p> <p><b>Localita'</b><br /><%= f.text_field :localita %></p> <p><%= f.submit &quot;create&quot; %> </p> <% end %>
  • 11. Modificare il metodo create del controllore multisalas Modificare il codice al seguente modo: def create @multisala=Multisala.new(params[:multisala]) if @multisala.save redirect_to :action=>'new’ else render :template=>&quot;multisalas/new“ end end
  • 12. Verificare gli errori dei validatori Lanciare il server (ruby script/server) Nella form di input non inserire nessun dato e premere il bottone create. Verificare gli errori di validazione Inserire tutti i dati, ma nel ‘numero sale’ mettere una stringa anziché un numero. Verificare l’errore di numericità Infine inserire tutti i dati in maniera corretta e verificare che non ci sia più nessun errore