Rails
De Wiki de la communauté Mandriva.
|
Rails, plus exactement Ruby on Rails ou RoR est un ensemble d'outils permettant de développer des applications pour l'internet facilement. Il se base sur le principe du Modèle-Vue-Contrôleur aussi appelé MVC.
|
| Pour installer rails, lancez Sélectionnez-le et cliquez sur Appliquer (Aide). Vous pouvez également l'installer en utilisant la console en tant qu'administrateur avec la commande suivante : urpmi rails |
Si vous avez besoin d'un serveur MySql, je vous renvoie vers la page en question MySQL
Sommaire |
Installation manuelle
Pour savoir comment cela fonctionne et pour suivre au plus près les dépendances, il y a la possibilité de faire une installation manuelle. En revanche, ce ne sera plus urpmi qui mettra à jour votre application.
Le principe est de télécharger le logiciel RubyGems. Un "gem" est paquet logiciel ruby. Chaque logiciel écrit en ruby est empaqueté en "gem". Vous trouverez plus d'information sur la page officiel de la documentation de rubygem [en] ou sur cette page de rubyfrance. Pour télécharger rubygems, rendez-vous sur sa page sur RubyForge.
Pour installer, ouvrez une console root
# Placez vous dans le répertoire de root cd # Télécharger la dernière version de rubygems (en date du 22/01/2010) wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz # Décompressez les fichiers tar zxvf rubygems-1.3.5.tgz # Entrez dans le dossier cd rubygems-1.3.5.tgz # Installation de rubygems ruby setup.rb
Maintenant nous pouvons installer le paquet logiciel rails. L'outil d'installation va télécharger le paquet sur l'internet et ses dépendances. Dans une console root :
Normalement l'installation doit être réussie, mais de temps en temps il oublie les dépendances. Toujours en console root :
# Vérification de l'installation des dépendances (ne pas se focaliser sur les numéros de version) gem list *** LOCAL GEMS *** actionmailer (2.3.5) actionpack (2.3.5, 1.13.6) actionwebservice (1.2.6) activerecord (2.3.5, 1.15.6) activeresource (2.3.5) activesupport (2.3.5, 1.4.4) rack (1.1.0, 1.0.1) rails (2.3.5) rake (0.8.7) # S'il vous en manque, installez-les ! (remplacer mon_gem_manquant par le nom du gem manquant) gem install mon_gem_manquant
Par ailleurs, si vous projetez d'utiliser la base mysql pour vos travaux, n'oubliez pas d'installer le support mysql pour ruby. Toujours en console :
Il faut aussi installer le gem mysql
# Installation en console sudo gem install mysql => Cela plante convenablement # Installation du paquet manquant sudo urpmi mysql-devel # Relacez l'installation du gem mysql sudo gem install mysql => Installé !
Utilisation
Création de notre première application et lancement du serveur intégré
Nous allons créer un squelette d'application et constater qu'il fonctionne (placez vous dans votre dossier utilisateur
Démarrage du serveur Webrick intégré pour tester ce squelette
Maintenant ouvrez une page web sur la page http://localhost:3000 et vous aurez la page d'accueil de votre première application Rails !
Il est indispensable, lorsque vous êtes dans un environnement MSEC "Sécurisé", que vous ouvriez une console avec la commande Si vous ne le faites pas, les permissions des binaires créés ne seront pas les bonnes et ce sera la croix et la bannière pour tout mettre à jour !
Astuces
Nous présupposons que vous êtes avec une console et dans le dossier << racine >> de votre application rails.
# Lancement du serveur silencieusement (afin de ne pas voir en console ce qu'il se passe) ./script/server -d # Arrêt du serveur kill -9 `cat ./tmp/pids/server.pid`
Déployer en production votre application rails avec lighttpd
Je vous propose de suivre mon petit tutoriel pour déployer votre application rails avec lighttpd sur la page lighttpd
Liens utiles
Page résumant Ruby on Rails : http://blog.aysoon.com/66-ruby-on-rails-dossier-complet-pour-tout-comprendre-sur-cette-techno-page-du-web20
Eclipse
Si vous voulez développer avec l'IDE Eclipse, Il faudra l'installer, mais pour l'installation du plugin RDT (Ruby Development Tools), il faut se décarcasser, je n'ai pas encore réussi pour le moment (Contribuez !)
NetBeans
Je viens d'installer NetBeans (simplement) et son support pour RoR, je continue mes essais et vous présenterai bientôt NetBeans.
Rails 3
Voulant installer Rails 3, je me suis retrouver avec un vieille version de ruby (la 1.8) alors que la 1.9 est opérationnel. Il faut simplement compiler la dernière version de ruby.
Voila comment j'ai procédé : (tout se fait dans une console avec l'utilisateur courant ; // indique un commentaire ; $ indique ce qu'il faut taper ou copier/coller)
Préparation de l'installation
// Installation de tout ce qu'il faut pour compliler $ sudo urpmi task-c++-devel // Suppression de tous les paquets parlant de ruby $ sudo urpme ruby ruby-doc // Pour une raison que j'ignore, il est resté un exécutable gem dans le dossier /var/bin $ sudo rm -f /var/bin/gem
Compilation de ruby
// Télé-charger la dernière version de ruby (ruby-1.9.2-p0 à ce jour 01/10/2010) dans un dossier ruby $ cd; mkdir ruby; cd ruby; wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p0.tar.bz2 // Décompresser l'archive et entrée dans le répertoire $ tar -xjvf ruby-1.9.2-p0.tar.bz2; cd cd ruby-1.9.2-p0 // Préparation de la compilation $ ./configure // Compilation $ make // Installation de la nouvelle version de ruby $ sudo make install // Test de la nouvelle version => doit vous rendre ruby 1.9.2p0 (2010-08-18 revision 29036) $ ruby -v // J'ai eu un souci avec l'utilitaire gem qui a changé de place, donc il faut se déconnecter et ré-ouvrir une nouvelle console $ exit // A ce moment gem doit fonctionner => 1.3.7 $ gem -v
Installation de rails 3
// Nous pouvons installer rails 3 $ sudo gem install rails
Installation du support du CSV
// Pour importer des donnée CSV, c'est maintenant le paquet FasterCSV qui doit être utilisé $ sudo gem install fastercsv
Installation de la connection à sqlite3
Pour permettre à rails 3 d'utiliser sqlite3 comme base de donnée, il lui faut le gem sqlite3. Celui-ci sera construit à la volée, il faut donc le paquet devel pour ce faire
// Installation du paquet devel $ sudo urpmi sqlite3-devel // Installation du gem $ sudo gem install sqlite3
Installation de la connection à mysql
Pour permettre à rails 3 d'utiliser mysql comme base de donnée, il lui faut le gem mysql. Celui-ci sera construit à la volée, il faut donc le paquet devel pour ce faire. Par ailleurs il va demander l'installation d'un autre gem, mysql2, donc nous l'installerons en même temps.
// Installation du paquet devel $ sudo urpmi mysql-devel // Installation du gem $ sudo gem install mysql mysql2



