Ruby on Rails


 

RUBY on Rails

Pour le faire tourner sur IBM i, il vous faut :

##
## PowerRuby
##
LoadModule proxy_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM
LoadModule proxy_ftp_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM
LoadModule proxy_http_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM
LoadModule proxy_connect_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM
Listen *:02222
RewriteEngine On
RewriteRule ^(.*) http://127.0.0.1:02202/$1 [P]
ProxyPassReverse / http://127.0.0.1:02202/

 

Avec rails generate modele Post title:string text:text

Ruby génère une table (Posts dans RUBY_D) contenant :

Un peu de code :

 

Nous avons donc fait notre propre version

rails generate model Producteur code:integer nom:string tel:string appellation:string
                                               nbvin:integer encave:string cepage:string nbcepage:integer

puis

rake db:migrate
/PowerRuby/prV2R0M0/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtim
== CreateProducteurs: migrating ============================================
-- create_table(:producteurs)
-> 0.8304s
== CreateProducteurs: migrated (0.8306s) ===================================

la table est créé, enfin :

rails g scaffold_controller Producteur code:integer nom:string tel:string appellation:string
                                                      nbvin:integer encave:string cepage:string nbcepage:integer

/PowerRuby/prV2R0M0/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime...
[1m [32m create [0m app/controllers/producteurs_controller.rb
[1m [37m invoke [0m erb
[1m [32m create [0m app/views/producteurs
[1m [32m create [0m app/views/producteurs/index.html.erb
... / ....

le code est généré, Il faut pour terminer, ajouter une route dans routes.rb

resources :producteurs

Puis nous avons modifié quelques libellés dans les fichiers générés (.erb dans app/views/producteurs)

  -> index.html.erb, edit.html.erb, show.html.erb, new.html.erb

Vous remarquerez dans le fichier index.html.erb, la boucle

<% @producteurs.each do |producteur| %>
 <tr>
   <td><%= producteur.code %></td>
   <td><%= producteur.nom %></td>
   <td><%= producteur.tel %></td>
   <td><%= producteur.appellation %></td>
   <td><%= producteur.nbvin %></td>
   <td><%= producteur.encave %></td>
   <td><%= producteur.cepage %></td>
   <td><%= producteur.nbcepage %></td>
   <td><%= link_to 'Voir', producteur %></td>
   <td><%= link_to 'Modifier', edit_producteur_path(producteur) %></td>
   <td><%= button_to 'Supprimer', producteur, method: :delete, data: { confirm: 'Are you sure?' } %></td>
 </tr>
<% end %>



 

Copyright © 1995,2014 VOLUBIS