Mid-Hudson Valley Linux Users Group Ruby on Rails Web Development is Fun Again MHVLUG Meeting Jan 7 th 2009 Sean Dague sean.dague.net.

Slides:



Advertisements
Similar presentations
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 15 Introduction to Rails.
Advertisements

Trestle Generator Industrial-strength scaffolding for Ruby on Rails web application development.
Creating Web Services with Ruby on Rails Robert Thew Internet and Web Systems II.
Feature requests for Case Manager By Spar Nord Bank A/S IBM Insight 2014 Spar Nord Bank A/S1.
IWay Service Manager 6.1 Product Update Scott Hathaway iWay Software Copyright 2010, Information Builders. Slide 1.
Sakai on Rails Integrating Ruby and Sakai David Adams, Virginia Tech.
Ruby on Rails by Manik Juneja Ruby On Rails. Ruby on Rails by Manik Juneja Rails is a Web Application development framework. Based on the MVC pattern.
CS 142 Lecture Notes: Rails ActiveRecordSlide 1 Model for Student Table SELECT * FROM students; | id | name.
Ruby on Rails a popular web application framework, aimed to increase the speed and ease of web development Ruby on Rails, Tim Zappe.
24-Jun-15 Rails. What is Rails? Rails is a framework for building web applications This involves: Getting information from the user (client), using HTML.
Creating a wiki blog. Run apps that come with instant rails distribution select I /rails applications/open ruby console window Cd to cookbook or typo.
Ruby on Rails Creating a Rails Application Carol E Wolf CS396X.
Ruby on Rails ::The New Gem of Web Development Ross Pallan IT Project Manager Argonne National Laboratory
Irma & Robert. Irma & Robert  Ruby on Rails is an open source web application framework for the Ruby programming language. It is often referred to as.
Intro to Rails INFO 2310: Topics in Web Design and Programming.
DR. MOHAMMAD IQBAL THANKS TO ADITYA SENGUPTA Comparing Web Frameworks.
User Group 2015 Version 5 Features & Infrastructure Enhancements.
Ruby on Rails: An Introduction JA-SIG Summer Conference 2007 Michael Irion The University of Tulsa.
A little engineering on Rails Robert W. Hasker. Goals Intro to the Rails framework ▫Basic concepts: MVC, Active Record ▫A bit of Ruby Using Rails to build.
RUBY ON RAILS Mark Zhang. In this talk  Overview of Ruby on Rails  Core ideas  Show a tiny bit of example code  Touch on several general web development/
RUBY ON RAILS It’s so rad. What we’ll cover  What is Ruby?  What is RoR?  Why RoR?  Developing with RoR  Deployment  Demo  Questions.
Ruby on Rails. What is Ruby on Rails? Ruby on Rails is an open source full-stack web framework. It is an alternative to PHP/MySQL. It can render templates,
Ruby on Rails CSCI 6314 David Gaspar Jennifer Garcia Avila.
1 Dr Alexiei Dingli Web Science Stream Models, Views and Controllers.
UC Berkeley Hello Rails. Review: MVC Goal: separate organization of data (model) from UI & presentation (view) by introducing controller –mediates user.
Web Application Programming Carol Wolf Computer Science.
WaveMaker Visual AJAX Studio 4.0 Training Authentication.
Why rails? Carlos Kirkconnell. Google Happiness leads to Productivity Happiness Matters.
MVC & ActiveRecord by Christian Mohr & Mohamed Souiai.
An Introduction to Designing and Executing Workflows with Taverna Katy Wolstencroft University of Manchester.
1 Dr Alexiei Dingli Web Science Stream Introducing Rails.
Ruby on Rails Your first app. Rails files app/ Contains the controllers, models, views and assets for your application. You’ll focus on this folder for.
Yii Development. -Yii stands for Yes It Is ! -a fast -Secure -high performance -PHP framework for developing web 2.0 applications. -simply a fine tool.
Lecture 11 Rails Topics SaaSSaaS Readings: SaaS book Ch February CSCE 740 Software Engineering.
© Copyright IBM Corporation 2007 AP/Americas April 15-18, 2007 Anaheim, California Introduction to RubyOnRails - a J2EE replacement? Russell Scheerer –
Associations INFO 2310: Topics in Web Design and Programming.
1 Dr Alexiei Dingli Web Science Stream A ROR Blog.
Ruby on Rails vs ASP.NET MVC Simone Chiaretta Web Architect, Council of the EU Milano, 19 Febbraio 2011 Sandro.
An Introduction to Designing and Executing Workflows with Taverna Aleksandra Pawlik materials by: Katy Wolstencroft University of Manchester.
Photo Gallery INFO 2310: Topics in Web Design and Programming.
Ruby on Rails: Databases. Rails Database Familiar Table Concept Naming convention – lower case, plural (i.e. tweets) How to Access (find), Update, Delete.
Web Application Development Technology เทคโนโลยีสำหรับการพัฒนาโปรแกรม ประยุกต์เว็บ Suntorn Witosurapot Phone: or
Rails & Ajax Module 5. Introduction to Rails Overview of Rails Rails is Ruby based “A development framework for Web-based applications” Rails uses the.
Ruby/Ruby on Rails Yasushi Osonoi Open Dream corporation
Ruby on Rails By S. Christopher Hellriegel. Overview 1. What is Ruby on Rails? 2. What is MVC? 3. Simple example 4. Wow, that was cool!
RUBY ON RAILS (RoR) Ishwor Khadka. Why Ruby on Rails?
Chapter 15 © 2013 by Pearson Overview of Rails - Rails is a development framework for Web-based applications - Based on MVC architecture for applications.
Introduction to Ruby&Rails Yuri Veremeyenko Monica Verma.
1 Dr Alexiei Dingli Web Science Stream Installing ROR.
Rails and routing INFO 2310: Topics in Web Design and Programming.
Introduction to information systems RUBY ON RAILS dr inż. Tomasz Pieciukiewicz.
1 Rails for the Ruby-Impaired John Paul Ashenfelter CTO/Transitionpoint.
Advanced Migration By Aye Mon Tun.  To change database schema in consistent and easy way  In ruby code Migration? 11/25/2013 2Web Application Engineering.
Mid-Hudson Valley Linux Users Group Ruby on Rails Web Development is Fun Again MHVLUG Meeting Jan 7 th 2009 Sean Dague sean.dague.net OpenSim: Open Source.
JRuby on Rails Presenter Name
Melbourne LUG Presentation Learning Rails and Ruby - making webapps easier.
Ruby on What? A brief introduction to Rails Christopher Hoskin Faculty of History 12th Annual IT Support Staff Conference 21st June 2007, St. Catherine's.
JRuby on Rails Brian Leonard ブライアン レオナルド
CIS Host Manager Bryce Johnston CIS 597 May 8, 2009.
WebYaST Remote Web Based System Management
Data Virtualization Tutorial… CORS and CIS
Ruby Tooling in NetBeans

Ruby, Rails, GUIs, and More
Twitter & NoSQL Integration with MVC4 Web API
Bruce Scharlau, University of Aberdeen, 2017
Ruby on Rails by Manik Juneja
Rails 11-Nov-18.
Ruby on Rails by Manik Juneja
Chapter 15 Introduction to Rails.
Presentation transcript:

Mid-Hudson Valley Linux Users Group Ruby on Rails Web Development is Fun Again MHVLUG Meeting Jan 7 th 2009 Sean Dague sean.dague.net

Mid-Hudson Valley Linux Users Group Challenges of Tonight's Talk Installing Rails Creating a Scaffold AJAX Effects Deploying with Passenger ActiveRecord Basics Validators ActiveSuppor t MVC ActiveRecord Magic Migrations Unit Testing REST Web Services RESTful Authentication Layout s RJS Templates XML Builder Object Relationships acts_as_tre e acts_as_list Wrapping Legacy Databases DateTime mixins Activ e r Rails Plugins Git Support LDAP Support xml-rpc background.rb

Mid-Hudson Valley Linux Users Group Where did it come from? "37Signals is “sexy” - one of its founders is the Scandinavian rockstar behind Ruby on Rails, David Heinemeier Hansson. On the tech industry sexometer, 37Signals is like Spinal Tap- they have a special cool amplifier that goes up to 11." - James Governor, Redmonk.com

Mid-Hudson Valley Linux Users Group The Rails Motto DRYDRY on't epeat ourself

Mid-Hudson Valley Linux Users Group Model / View / Controller pattern

Mid-Hudson Valley Linux Users Group Nuts and Bolts I promise we'll get to fun stuff shortly

Mid-Hudson Valley Linux Users Group Rails Installation ● It may come with your distribution – Using that often makes the most sense – Ubuntu 8.10 ships rails There is a layouts bug which is fixed in ● Instant Rails - easy on Windows ● And yes, it works great on Mac as well

Mid-Hudson Valley Linux Users Group Installing Rails on Ubuntu # gem install rails -v "=2.1.2" Successfully installed activesupport Successfully installed activerecord Successfully installed actionpack Successfully installed actionmailer Successfully installed activeresource Successfully installed rails (documentation installation)

Mid-Hudson Valley Linux Users Group The Sample Application MHVLUG Event Calendar...created live

Mid-Hudson Valley Linux Users Group Some Ruby-isms you'll see ● :event is 'event' - ':' auto quotes a string ● parens are not required if unambiguous – debugger - is a function – link_to 'Show', event - is a function with 2 params is not an array, it is an instance scope ● respond_to do |format|... ● end ● respond_to returns an iterator, the do block is called once for every item in the iterator. format is the object of that iteration.

Mid-Hudson Valley Linux Users Group Rails loves that escaping Event.find(:first, :conditions => ["name=?", name]) Why do we care?

Mid-Hudson Valley Linux Users Group

Your First Rails Application # rails -d sqlite3 mhvlug-event... # cd mhvlug-event #./script/server => Booting WEBrick... => Rails application started on => Ctrl-C to shutdown server; call with --help for options [ :53:19] INFO WEBrick [ :53:19] INFO ruby ( ) [i486-linux] [ :53:19] INFO WEBrick::HTTPServer#start: pid=27722 port=3000

Mid-Hudson Valley Linux Users Group Creating Your First Model/Scaffold #./script/generate scaffold event name:string description:text location:string start:datetime end:datetime... # rake db:migrate

Mid-Hudson Valley Linux Users Group Exploring that Scaffold

Mid-Hudson Valley Linux Users Group Flavor of Rails class Project < ActiveRecord::Base belongs_to :portfolio has_one :project_manager has_many :milestones has_many :deliverables, :through => :milestones validates_presence_of :name, :description validates_acceptance_of :non_disclosure_agreement validates_uniqueness_of :short_name end

Mid-Hudson Valley Linux Users Group Migrations

Mid-Hudson Valley Linux Users Group Adding Layout

Mid-Hudson Valley Linux Users Group Rails Conventions ● Objects are singular, database tables are plural – Person objects stored in people table ● Database tables have primary key named id, which is an auto incrementing integer ● Foreign keys defined by object_id.

Mid-Hudson Valley Linux Users Group Buy These Books!

Mid-Hudson Valley Linux Users Group NetBeans - Rails IDE

Mid-Hudson Valley Linux Users Group Advanced Topics ● Wrapping Legacy Data ● Adding User Authentication - restful_authentication ● Consuming Web Services - Active Resource ● Deployment - passenger / aka mod_rails ● Rails Debugger ● Rails Console ● restful_authentication_tutorial

Mid-Hudson Valley Linux Users Group Things I love about Rails ● Migrations ● Layouts ● Deep REST integration ● Secure by default ● Built in testing ● Rails is not synthetic ● 30 minutes to add a new feature