Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ruby on Rails Creating a Rails Application Carol E Wolf CS396X.

Similar presentations


Presentation on theme: "Ruby on Rails Creating a Rails Application Carol E Wolf CS396X."— Presentation transcript:

1 Ruby on Rails Creating a Rails Application Carol E Wolf CS396X

2 Ruby Console Window First choose Rails Applications Next select Open Ruby Console Window At the prompt, type rails apps_name For example: rails library This creates a full directory system in the folder rails_apps.  Console Window

3 Rails directory system

4 Important folders  app  controllers – sits between client and database  helpers – module with common ruby code  models – code to interface with the database  views – web pages containing html and erb  db – contains database  migration – methods to change the database  script  console – interactive console window for ruby code  dbconsole – interactive console window for the database  generate – methods to generate scaffolding and migrations  server – activates server to be used with localhost

5 Adding a table to the database  You can use the scaffold command to set up your database.  The database is created when you create the application.  Type the following to create a table called books.  ruby script/generate scaffold book isbn:string author:string title:string  Note that if you call it book, rails automatically makes it books.  This creates the file 20080805165427_create_books.rb in the db/migrate folder, where the numbers are a time stamp.  Then type  rake db:migrate  The rake command executes all the ruby files in the migrate folder.  Rails includes a primary id field that is automatically incremented when you add rows to the database.

6 The file, schema.rb  Rake adds a ruby file to the db folder called schema. Lines beginning with # are comments. # This file is auto-generated from the current state of the database. # (Additional comments omitted.) ActiveRecord::Schema.define(:version => 20080805165427) do create_table "books", :force => true do |t| t.string "isbn" t.string "author" t.string "title" t.datetime "created_at" t.datetime "updated_at" end

7 View the contents of the database  To begin with, the books table is empty. Bring up the server to access it.  ruby script/server  The server that comes with InstantRails is called mongrel. It is a version of the open source apache server.  Point your browser to  http://localhost:3000/books where localhost is the name for the IP address 127.0.0.1. (Use that if your computer does not recognize localhost.) http://localhost:3000/books  localhost is often called the local loop.

8 The first web page  The first web page is just the title of the table.  It includes a heading and a link to a New book page.  Click it to add data to the table.

9 The New book page  The new book page provides text fields with labels.  You can use these to add data.  Just fill in the fields and click Create.  When done, it will take you to a third page that shows what you added.

10 The show page and the index after adding a book to the table.

11 The index.html.erb page uses embedded ruby code. Listing books ` Isbn Author Title 'Are you sure?', :method => :delete %>

12 Explanation of some of the index page code  The tag creates a table with headers enclosed by …, rows by …, and columns by …  The embedded ruby code is enclosed by   This line displays the data in the book column.  The controller retrieves the data in a result set, a two dimensional array. It is displayed on the page using a ‘for’ loop.   The ‘@’ sign is used to indicate a variable.  The line generates the html code New book.

13 Header code added by rails to the beginning of the web pages. It also adds a foot to the end. Books: index


Download ppt "Ruby on Rails Creating a Rails Application Carol E Wolf CS396X."

Similar presentations


Ads by Google