1 / 8

Simple Rails Template

This document provides an overview of Rails Controllers and Views, particularly focusing on handling templates and parameters within a Rails application. It covers fetching page content, displaying key-value parameters, and dynamically creating a list of prime numbers. Additionally, it details the structure of a Rails application, from controllers to views, with specific examples such as fetching current time, displaying primes, and managing layouts. This serves as a foundational guide for students in understanding Rails' MVC framework.

cisco
Télécharger la présentation

Simple Rails Template

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Simple Rails Template <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Hello, User</title> </head> <body> <p> This page was fetched at <%= Time.now() %> </p> </body> </html> CS 142 Lecture Notes: Rails Controllers and Views

  2. Control Structures in Templates ?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Rails Parameters</title> </head> <body> <p> The <code>params</code> hash contains the following values: </p> <% params.each do |key, value| %> <p><%= key %>: <%= value%></p> <% end %> </body> </html> CS 142 Lecture Notes: Rails Controllers and Views

  3. Control Structures, cont’d Template: ... <% params.each do |key, value| %> <p><%= key %>: <%= value%></p> <% end %> ... HTML: ... <p>x: 44</p> <p>y: 92</p> <p>action: showParams</p> <p>controller: rails_intro</p> ... CS 142 Lecture Notes: Rails Controllers and Views

  4. Controller: Compute Primes class RailsIntroController < ApplicationController defshowPrimes if (params[:count] != nil) then count = params[:count].to_i() else count = 10 end @primes = [] candidate = 2 while (@primes.length < count) isPrime = true @primes.each do |prime| if (candidate % prime) == 0) then isPrime = false break end end if (isPrime) then @primes << candidate end candidate += 1 end end end Query value determines# primes to compute Fill in @primes arraywith prime numbers CS 142 Lecture Notes: Rails Controllers and Views

  5. Template to Display Primes <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE ...> <html ...> <head> <title><%= @primes.length %> Prime Numbers</title> <%= stylesheet_link_tag 'main' %> </head> <body> <p> The first <%= @primes.length %> prime numbers are: </p> <table class="oddEven" cellspacing="0"> <tr class="header"><td>Prime Numbers</td></tr> <% @primes.each do |prime| %> <tr class="<%=cycle('odd', 'even')%>"> <td><%=prime%></td> </tr> <% end %> </table> </body> </html> CS 142 Lecture Notes: Rails Controllers and Views

  6. Directory Structure app controllers rails_intro_controller.rb student_controller.rb views rails_intro hello.html.erb showParams.html.erb showPrimes.html.erb student models assets javascripts stylesheets main.css db migrate public images CS 142 Lecture Notes: Rails Controllers and Views

  7. Layouts app/views/layouts/application.html.erb: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title><%=@title %></title> </head> <body> <%= yield %> </body> </html> app/views/rails_intro/hello.html.erb: <% @title = "Hello, user" %> <p> This page was fetched at <%= Time.now() %> </p> CS 142 Lecture Notes: Rails Controllers and Views

  8. CS 140 Lecture Notes: File Systems

More Related