6. Generare codice con lo Scaffolding

Lo strumento più potente messo a disposizione da ruby on rails per velocizzare e facilitare al programmatore lo sviluppo di applicazioni rails è lo Scaffolding,per la generazione automatica del codice.
Sarà possibile definire alcune specifiche sulla base di dati e il compilatore si occuperà poi di generare il sorgente per l’esecuzione di operazioni CRUD (create, read, update & delete) a carico dei record manipolati.
Il comando per la creazione della risorsa “New” dovrà basarsi sull’istruzione “rails generate scaffold” seguita dal nome della stessa e dai campi relativi ad essa; una volta aperto il terminale Prompt dovremo quindi digitare quanto segue:

rails generate scaffold New autore:string titolo:string testo:text

L’esecuzione dell’istruzione porterà alla visulizzazione del seguente output:

invoke  active_record
   create db/migrate/20120425095451_create_news.rb
   create app/models/new.rb
   invoke test_unit
     createtest/unit/new_test.rb
     createtest/fixtures/news.yml
    route resources :news
   invoke  scaffold_controller
   create app/controllers/news_controller.rb
   invoke erb
     createapp/views/news
     createapp/views/news/index.html.erb
     createapp/views/news/edit.html.erb
     createapp/views/news/show.html.erb
     createapp/views/news/new.html.erb
     createapp/views/news/_form.html.erb
   invoke test_unit
     createtest/functional/news_controller_test.rb
   invoke helper
     createapp/helpers/news_helper.rb
     invoketest_unit
   create  test/unit/helpers/news_helper_test.rb
   invoke  assets
   invoke coffee
     createapp/assets/javascripts/news.js.coffee
   invoke scss
     createapp/assets/stylesheets/news.css.scss
   invoke  scss
identical app/assets/stylesheets/scaffolds.css.scss

Si tenga presente che quella che si sta effettuando non è la procedura per il popolamento di un database, anche se la natura delle operazioni svolte potrebbe farlo pensare, ma di una struttura di file.
Uno Scaffold può essere cancellato del tutto attraverso una semplice istruzione basata sul comando “rail destroy scaffold” seguita dal nome della risorsa che si vuole eliminare; nel nostro caso l’istruzione richiesta sarà per esempio:

rails destroy scaffold New
Tothebit

About Tothebit

Tothebit