Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

My rails way

3,782 views

Published on

Published in: Technology
  • Be the first to comment

My rails way

  1. 1. My Rails Way Ruby on Rails 1
  2. 2. Who am I • I’m • Master: Ruby & Ruby on Rails • Company: PIXNET • Site: http://belovely.tw/ • Blog: http://wildjcrt.pixnet.net/ 2
  3. 3. Agenda • Introduction Ruby on Rails • Rails training course 3
  4. 4. Introduction Ruby on Rails 4
  5. 5. Ruby • Matz • Perl 6 pearl Ruby 7 ruby * http://www.ruby-lang.org/en/ * http://www.ruby-lang.org/zh_TW/ ( ) * http://ruby.tw/ ( ) 5
  6. 6. Ruby on Rails (1) • David Heinemeier Hanson (37signals) • Yehuda Katz (Engine Yard) * http://rubyonrails.org/ * http://www.rubyonrails.org.tw/ ( ) 6
  7. 7. Ruby on Rails (2) • A web framework for Ruby • MVC architecture • Agile software development - Don't Repeat Yourself - Convention over Configuration 7
  8. 8. Website using Rails • BeLovely • Techbang • Twitter • Github • Yellow Pages • Basecamp • ......more 8
  9. 9. Regular learning roadmap http://techiferous.com/2010/07/ roadmap-for-learning-rails/ 9
  10. 10. So... It takes a significant investment of time to learn Rails. 10
  11. 11. In fact, we already have a great training course to enter Rails. 11
  12. 12. Rails training course 12
  13. 13. 2010 Ruby on Rails Rails 2 • http://blog.xdite.net/?p=1754 - http://blog.xdite.net/?p=1807 - http://wildjcrt.pixnet.net/blog/post/ 26624950 ‣ pw: cite-on-rails * This training course designs by xdite. 13
  14. 14. Course purpose • Basic knowledge • Useful services • Bottleneck 14
  15. 15. Course 0: Git • Open a project in github. • Practice git useful commands. - pull, push, commit, branch, add, checkout, merge, status, diff, grep * Peepcode Git Pro Git * http://wildjcrt.pixnet.net/blog/post/ 26458848 15
  16. 16. Course 0: Editor • vgod Vim - http://blog.vgod.tw/2009/12/08/vim-cheat- sheet-for-programmers/ * http://c9s.blogspot.com/2009/08/vim-hacks- coscup.html * Oreilly vi vim * Pragmatic TextMate: Power Editing for the Mac 16
  17. 17. Course 0: Linux CLI • Peepcode Meet the Command Line Advanced Command Line 17
  18. 18. Reference before course * http://rails.pixnet.net/blog/category/list/1603567 * http://wildjcrt.pixnet.net/blog/category/list/1431631 * Ruby Programming — Ruby * Ruby for Rails - Rails Ruby * The Well-Grounded Rubyist * Rails * Agile Web Development with Rails, Third Edition * The Rails Way * Ruby Pocket Reference * Rails Recipes * Advanced Rails Recipes: 84 New Ways to Build Stunning Rails Apps 18
  19. 19. Course 1 (1) • Create a new rails project. • Setup configuration. - database.yml - .gitignore • Push to github. * http://rails.pixnet.net/blog/post/22953827 19
  20. 20. Course 1 (2) • Complete a basic forum. - Forum model CRUD (scaffold) - Post model CRUD (scaffold) - Setting routes in this format : http://example.org/forums/1/posts/2 * http://rails.pixnet.net/blog/post/22956704 * http://ihower.tw/training/rails-tutoral.html 20
  21. 21. Course 2 • User can login / logout / signup. - Guest can view all posts. - Post needs to login forum. - User can only edit and destroy his own posts. • http://github.com/technoweenie/restful- authentication plugin DRY! 21
  22. 22. Course 3 • Forum posts order and paginate. - params, pagination - counter_cache - named_scope :recent • http://github.com/mislav/will_paginate plugin * http://railscasts.com/episodes/23-counter-cache- column * http://railscasts.com/episodes/108-named-scope 22
  23. 23. Course 4 • Attachment files - PostAttachment model - form_for, multipart • http://github.com/thoughtbot/paperclip plugin • http://github.com/technoweenie/ attachment_fu plugin 23
  24. 24. Course 5 • Forum can manage admin accounts. • Build backstage. - route : namespace - before_filter :require_is_admin * http://railstips.org/blog/archives/2007/04/28/ namespaces-added-to-routes/ 24
  25. 25. Course 6 • Rake - create seed data - create fake data • http://github.com/ryanb/populator plugin * http://railsenvy.com/2007/6/11/ruby-on-rails-rake- tutorial * http://ryandaigle.com/articles/2009/5/13/what-s- new-in-edge-rails-database-seeding 25
  26. 26. Course 7 (1) • Installing Ruby on Rails environment in a pure OS (recommend Debian / Ubuntu). - Ruby Enterprise Edition - MySQL - Apache / nginx - Passenger - Capistrano 26
  27. 27. Course 7 (2) • Deploy the practice project. - Setup deploy.rb. - Create an account for deploy. - Setup ssh. - Setup database, run migration. - Setup virtual host. 27
  28. 28. Course 7 (3) * http://wildjcrt.pixnet.net/blog/post/ 26624950 * http://blog.xdite.net/?p=1807 * AWDR3 deploy * Ruby Pocket Reference capistrano 28
  29. 29. Another Rails Training( ) Ruby on Rails Ruby on Rails http://ihower.tw/ http://ihower.tw/ rails2/ rails3/ *designed by ihower http://ihower.tw/blog/ 29
  30. 30. Related Link • Ruby on Rails? 2009 - http://rails.pixnet.net/blog/post/27997778 • Ruby on Rails 2009 - http://rails.pixnet.net/blog/post/27997784 • Rails - http://wildjcrt.pixnet.net/blog/post/26624950 • Rails - http://wildjcrt.pixnet.net/blog/post/27037216 30
  31. 31. Q &A 31

×