Tutoriel : créer un application Ruby on Rails en quelques minutes sous Windows
Prérequis et configuration par défaut
- Système (l’un ou l’autre)
- InstantRails (exécutable regroupant Ruby, RubyGems, Rails et MySQL)
- Wamp, Ruby, RubyGems et gem install rails (ma méthode préférée)
- Username MySQL : root / Mot de passe : aucun
- gem install rspec (Dans la console de windows : Exécuter, cmd, Entrée)
- gem install mongrel
- Un éditeur avec arborescence de fichiers (J’utilise Aptana, Netbeans ou Notepad++)
Marche à suivre
- rails -d mysql my_app (Dans la console de windows : Exécuter, cmd, Entrée)
Crée l’application rails my_app avec database.yml configurée pour MySQL (éditez config/database.yml pour modifier la configuration de base)
- cd my_app
Entre dans le répertoire de votre nouvelle application Rails - rake db:create
Crée la base de données my_app_development - del public\index.html
Efface le fichier index.html qui est affiché par défaut
- ruby script/generate rspec_scaffold Author name:string email:string
Crée un squelette utilisant la plateforme de test RSpec pour les auteurs (model, views, controller, tests, routes, migration en REST) - ruby script/generate rspec_scaffold Post title:string body:text author_id:integer
Crée un squelette utilisant la plateforme de test RSpec pour les postes avec la clé étrangère author_id - rake db:migrate
Altère la base de données en y ajoutant les auteurs et les postes - Dans app/models/post.rb : ajouter belongs_to :author dans la classe Post
Crée la relation entre un post et un auteur dans le modèle Post. On pourra ainsi écrire Post.first.author - Dans app/models/author.rb : has_many :posts dans la classe Auteur
Crée la relation inverse entre un auteur et un post dans le modèle Auteur. On pourra ainsi écrire Auteur.first.posts - ruby script\server
Démarre le serveur Mongrel sur le port 3000 - Tapez localhost:3000/authors dans votre navigateur
Ajoutez des auteurs - Tapez localhost:3000/posts dans votre navigateur
Ajoutez des posts (avec les author_id de ceux que vous avez créés. essayez 1, 2, 3 en fonction du nombre d’auteurs créés. Ce sont les id dans la table authors)
- config/routes.rb : map.root :controller => :posts
Redirige la requête sur la racine du domaine vers l’action index du controleur posts : localhost:3000/posts/ - Editez app/views/posts/index.html.erb et show.html.erb
Remplacez author_id par author.name - Naviguez sur localhost:3000
Dans l’ajout de posts, la relation entre posts et auteurs n’utilise pour l’instant que l’ID de l’auteur, mais vous pouvez très facilement modifier les vues (views) des posts et des auteurs pour afficher les relations. Consultez l’API »
Combien de temps ça vous a pris ? Commentez !
Soyez le premier à soumettre un commentaire !