Your SlideShare is downloading. ×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Initiation à Ruby on Rails

209
views

Published on

Cette conférence a pour but de vous faire (re)découvrir le framework web Ruby on Rails. En une heure, nous vous montrerons comment développer une application simple et la déployer sur Microsoft Azure. ...

Cette conférence a pour but de vous faire (re)découvrir le framework web Ruby on Rails. En une heure, nous vous montrerons comment développer une application simple et la déployer sur Microsoft Azure. Nous nous ferons découvrir le dynamisme de la communauté Ruby.

Published in: Technologies

0 commentaires
0 mentions J'aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Be the first to like this

Aucun téléchargement
Vues
Total des vues
209
Sur Slideshare
0
À partir des ajouts
0
Nombre d'ajouts
0
Actions
Partages
0
Téléchargements
10
Commentaires
0
J'aime
0
Ajouts 0
No embeds

Signaler un contenu
Signalé comme inapproprié Signaler comme inapproprié
Signaler comme inapproprié

Indiquez la raison pour laquelle vous avez signalé cette présentation comme n'étant pas appropriée.

Annuler
No notes for slide

Transcript

  • 1. Initiation àRuby on RailsRuby on Rails@humancoders
  • 2. @matthieusegret
  • 3. Matthieu SegretFormateur Ruby on RailsCofondateur de Human Coders
  • 4. Formation
  • 5. Un langage :Ruby
  • 6. • Langage interprété / orienté objet• Libre - Licence Ruby et GPL• Version 1.9.3 (bientôt 2.0)• Apparu en 1995Ruby
  • 7. puts "Hello world"Ruby"ruby is cool".length # 12-42.abs # 42"Nice Day Isnt It?".downcase.split# ["nice", "day", "isnt", "it?"]
  • 8. class Bookdef initialize(name)@name = nameenddef name@nameendendRubybook = Book.new("Programming Ruby")book.name # "Programming Ruby"
  • 9. Un framework :Ruby on Rails
  • 10. • Framework web écrit en Ruby• Libre - MIT• Version 3.2 (bientôt 4.0)• Apparu en 2004Ruby on Rails
  • 11. Convention overConfiguration
  • 12. DRY(Don’t Repeat Yourself)
  • 13. Projet : MyNotes
  • 14. Projet : MyNotes$ rails new MyNotes• Créer un nouveau projet$ cd MyNotes$ rails server• Démarrer le serveur
  • 15. ViewControllerModelRouting
  • 16. CRUD
  • 17. CreateReadUpdateDeleteCRUD
  • 18. Ressource : notesnotesid integertitle varcharcontent text
  • 19. $ rails generate scaffold note title content:textinvoke active_recordcreatedb/migrate/20130130171611_create_notes.rbcreateapp/models/note.rbinvoke test_unitcreatetest/unit/note_test.rbcreatetest/fixtures/notes.ymlinvoke resource_routerouteresources :notesinvoke scaffold_controllercreateapp/controllers/notes_controller.rbinvokeerbcreate app/views/notescreateapp/views/notes/index.html.erbcreateapp/views/notes/edit.html.erbcreateapp/views/notes/show.html.erbcreateapp/views/notes/new.html.erbcreate app/views/notes/_form.html.erb...Génération du CRUD
  • 20. Migration
  • 21. migration 1migration 2migration 3migration 4devise_create_usersacts_as_followercreate_notesadd_profile_to_users20110720095338_20110718190746_20110715205012_20110605152153_rake db:migrate rake db:rollbackcurrent.rbMigration
  • 22. Migrationclass CreateNotes < ActiveRecord::Migrationdef changecreate_table :notes do |t|t.string :titlet.text :contentt.timestampsendendenddb/migrate/20130130175117_create_notes.rb$ rake db:migrate
  • 23. Base de donnéesnotesid integertitle varcharcontent text
  • 24. Modèle
  • 25. ViewControllerModelRouting
  • 26. Modèleclass Note < ActiveRecord::Baseendapp/models/note.rb
  • 27. Modèle : créationNote.create(content: "I created Ruby", title: "Matz")
  • 28. Modèle : mise à journote = Note.find(1)note.content = "I love Ruby"note.save
  • 29. Modèle : lectureNote.where(:title => "Matz").order("title ASC").limit(5)
  • 30. Modèle : suppressionNote.find(1).destroy
  • 31. Vue
  • 32. ViewControllerModelRouting
  • 33. ERB<p><b>Title:</b><%= @note.title %></p><p><b>Content:</b><%= @note.content %></p>app/views/notes/show.html.erb
  • 34. Formulaires<%= form_for(@note) do |f| %><%= f.label :title %><%= f.text_field :title %><%= f.label :content %><%= f.text_area :content %><%= f.submit %><% end %>
  • 35. Contrôleur
  • 36. ViewControllerModelRouting
  • 37. Contrôleurclass NotesController < ApplicationControllerdef show@note = Note.find(params[:id])endendapp/controllers/notes_controller.rbapp/views/notes/show.html.erbRequestGET /notes/1<p><b>Title:</b><%= @note.title %></p>
  • 38. Déploiement
  • 39. Les gems
  • 40. IndexationTwitterNoSQLPaiement en ligneGéolocalisationParsingPaginationCacheTâches defondsUpload defichiersFacebookAuthentificationLocalisationOAuthA/B testeLDAP
  • 41. La commautéeFrançaise
  • 42. MontpellierLyonToulouseNantesRennesLilleParisSophia AntipolisStrasbourgMarseilleCompiegneBordeaux
  • 43. Aller plus loin
  • 44. Programming Ruby 1.9 (3rdedition)Agile Web Development with Rails(4th edition)
  • 45. Formation
  • 46. @humancodersMerci !