17 Migration 15 Rails In Depth
bundle exec /home/rubys/git/rails/bin/rails new namelist --skip-bundle --dev
create
create README
create Rakefile
create config.ru
create .gitignore
create Gemfile
create app
create app/controllers/application_controller.rb
create app/helpers/application_helper.rb
create app/mailers
create app/models
create app/views/layouts/application.html.erb
create config
create config/routes.rb
create config/application.rb
create config/environment.rb
create config/environments
create config/environments/development.rb
create config/environments/production.rb
create config/environments/test.rb
create config/initializers
create config/initializers/backtrace_silencers.rb
create config/initializers/inflections.rb
create config/initializers/mime_types.rb
create config/initializers/secret_token.rb
create config/initializers/session_store.rb
create config/locales
create config/locales/en.yml
create config/boot.rb
create config/database.yml
create db
create db/seeds.rb
create doc
create doc/README_FOR_APP
create lib
create lib/tasks
create lib/tasks/.gitkeep
create log
create log/server.log
create log/production.log
create log/development.log
create log/test.log
create public
create public/404.html
create public/422.html
create public/500.html
create public/favicon.ico
create public/index.html
create public/robots.txt
create public/images
create public/images/rails.png
create public/stylesheets
create public/stylesheets/.gitkeep
create public/javascripts
create public/javascripts/application.js
create public/javascripts/controls.js
create public/javascripts/dragdrop.js
create public/javascripts/effects.js
create public/javascripts/prototype.js
create public/javascripts/rails.js
create script
create script/rails
create test
create test/fixtures
create test/functional
create test/integration
create test/performance/browsing_test.rb
create test/test_helper.rb
create test/unit
create tmp
create tmp/sessions
create tmp/sockets
create tmp/cache
create tmp/pids
create vendor/plugins
create vendor/plugins/.gitkeep
bundle install
Using rake (0.9.2.2)
Using abstract (1.0.0)
Using activesupport (3.0.10)
Using builder (2.1.2)
Using i18n (0.5.0)
Using activemodel (3.0.10)
Using erubis (2.6.6)
Using rack (1.2.4)
Using rack-mount (0.6.14)
Using rack-test (0.5.7)
Using tzinfo (0.3.31)
Using actionpack (3.0.10)
Using mime-types (1.17.2)
Using polyglot (0.3.3)
Using treetop (1.4.10)
Using mail (2.2.19)
Using actionmailer (3.0.10)
Using braintree (2.13.1)
Using activemerchant (1.10.0)
Using arel (2.0.10)
Using activerecord (3.0.10)
Using activeresource (3.0.10)
Using bundler (1.0.21)
Using highline (1.6.9)
Using net-ssh (2.2.1)
Using net-scp (1.0.4)
Using net-sftp (2.0.5)
Using net-ssh-gateway (1.1.0)
Using capistrano (2.9.0)
Using haml (3.1.4)
Using htmlentities (4.3.1)
Using json (1.6.4)
Using rdoc (3.12)
Using thor (0.14.6)
Using railties (3.0.10)
Using rails (3.0.10)
Using jquery-rails (0.2.7)
Using mysql (2.8.1)
Using sqlite3 (1.3.5)
Using test-unit (2.4.3)
Using will_paginate (3.0.2)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
edit config/routes.rb
Namelist::Application.routes.draw do
# ...
# This is a legacy wild controller route that's not recommended for RESTful applications.
# Note: This route will make all actions in every controller accessible via GET requests.
match ':controller(/:action(/:id(.:format)))'
end
rails generate model person name:string
invoke active_record
create db/migrate/20111225010516_create_people.rb
create app/models/person.rb
invoke test_unit
create test/unit/person_test.rb
create test/fixtures/people.yml
rake db:migrate
mv 20111225010516_create_people.rb 20110711000001_create_people.rb
== CreatePeople: migrating ===================================================
-- create_table(:people)
-> 0.0016s
== CreatePeople: migrated (0.0016s) ==========================================
edit app/controllers/people_controller.rb
class PeopleController < ApplicationController
def index
@person = Person.new(params[:person])
@person.save! if request.post?
@people = Person.find(:all)
end
end
edit app/views/layouts/people.html.erb
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"></meta>
<title>My Name List</title>
</head>
<body>
<%= yield :layout %>
</body>
</html>
mkdir app/views/people
edit app/views/people/index.html.erb
<table border="1">
<tr>
<th>Name</th><th>bytes</th><th>chars</th><th>reversed</th>
</tr>
<% for person in @people %>
<tr>
<td><%=h person.name %></td>
<td><%= person.name.length %></td>
<td><%= person.name.chars.length %></td>
<td><%=h person.name.chars.reverse %></td>
</tr>
<% end %>
</table>
<% form_for :person do |form| %>
New name: <%= form.text_field :name %>
<%= submit_tag "Add" %>
<% end %>
get /people
Name | bytes | chars | reversed |
---|
post /people
Showing /home/rubys/git/awdwr/edition3/work-192-30/namelist/app/views/people/index.html.erb where line #9 raised:
undefined method `length' for #<Enumerator: "Dave":chars>
Extracted source (around line #9):
6: <tr>
7: <td><%=h person.name %></td>
8: <td><%= person.name.length %></td>
9: <td><%= person.name.chars.length %></td>
10: <td><%=h person.name.chars.reverse %></td>
11: </tr>
12: <% end %>
Rails.root: /home/rubys/git/awdwr/edition3/work-192-30/namelist
app/views/people/index.html.erb:9:in `block in _app_views_people_index_html_erb__545044587366160019_26598440_3230059197627082313'
app/views/people/index.html.erb:5:in `each'
app/views/people/index.html.erb:5:in `_app_views_people_index_html_erb__545044587366160019_26598440_3230059197627082313'
/home/rubys/git/rails/actionpack/lib/action_view/template.rb:162:in `block in render'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:54:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_view/template.rb:154:in `render'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:59:in `block in _render_template'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `block in instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:56:in `_render_template'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:26:in `render'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:115:in `_render_template'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:109:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:47:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/compatibility.rb:55:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_string'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:93:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:17:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
/home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/benchmark.rb:310:in `realtime'
/home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:78:in `cleanup_view_runtime'
/home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:15:in `cleanup_view_runtime'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:5:in `send_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:150:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:11:in `process_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:436:in `_run__690484035493967909__process_action__4162604810476223443__callbacks'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:410:in `_run_process_action_callbacks'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:94:in `run_callbacks'
/home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:17:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `block in instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:119:in `process'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:41:in `process'
/home/rubys/git/rails/actionpack/lib/action_controller/metal.rb:138:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_controller/metal.rb:178:in `block in action'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:62:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:62:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:27:in `call'
rack-mount (0.6.14) lib/rack/mount/route_set.rb:148:in `block in call'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:93:in `block in recognize'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:68:in `optimized_each'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:92:in `recognize'
rack-mount (0.6.14) lib/rack/mount/route_set.rb:139:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:493:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/head.rb:14:in `call'
rack (1.2.4) lib/rack/methodoverride.rb:24:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/params_parser.rb:21:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/flash.rb:182:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/session/abstract_store.rb:149:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/cookies.rb:302:in `call'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:32:in `block in call'
/home/rubys/git/rails/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb:28:in `cache'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:12:in `cache'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:31:in `call'
/home/rubys/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:354:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/callbacks.rb:46:in `block in call'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:416:in `_run_call_callbacks'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/callbacks.rb:44:in `call'
rack (1.2.4) lib/rack/sendfile.rb:106:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/remote_ip.rb:48:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/show_exceptions.rb:47:in `call'
/home/rubys/git/rails/railties/lib/rails/rack/logger.rb:13:in `call'
rack (1.2.4) lib/rack/runtime.rb:17:in `call'
/home/rubys/git/rails/activesupport/lib/active_support/cache/strategy/local_cache.rb:72:in `call'
rack (1.2.4) lib/rack/lock.rb:11:in `block in call'
<internal:prelude>:10:in `synchronize'
rack (1.2.4) lib/rack/lock.rb:11:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/static.rb:30:in `call'
/home/rubys/git/rails/railties/lib/rails/application.rb:168:in `call'
/home/rubys/git/rails/railties/lib/rails/application.rb:77:in `method_missing'
/home/rubys/git/rails/railties/lib/rails/rack/log_tailer.rb:14:in `call'
rack (1.2.4) lib/rack/content_length.rb:13:in `call'
rack (1.2.4) lib/rack/handler/webrick.rb:52:in `service'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'
app/views/people/index.html.erb:9:in `block in _app_views_people_index_html_erb__545044587366160019_26598440_3230059197627082313'
app/views/people/index.html.erb:5:in `each'
app/views/people/index.html.erb:5:in `_app_views_people_index_html_erb__545044587366160019_26598440_3230059197627082313'
/home/rubys/git/rails/actionpack/lib/action_view/template.rb:162:in `block in render'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:54:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_view/template.rb:154:in `render'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:59:in `block in _render_template'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `block in instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:56:in `_render_template'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:26:in `render'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:115:in `_render_template'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:109:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:47:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/compatibility.rb:55:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_string'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:93:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:17:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
/home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/benchmark.rb:310:in `realtime'
/home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:78:in `cleanup_view_runtime'
/home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:15:in `cleanup_view_runtime'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:5:in `send_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:150:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:11:in `process_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:436:in `_run__690484035493967909__process_action__4162604810476223443__callbacks'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:410:in `_run_process_action_callbacks'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:94:in `run_callbacks'
/home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:17:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `block in instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:119:in `process'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:41:in `process'
/home/rubys/git/rails/actionpack/lib/action_controller/metal.rb:138:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_controller/metal.rb:178:in `block in action'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:62:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:62:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:27:in `call'
rack-mount (0.6.14) lib/rack/mount/route_set.rb:148:in `block in call'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:93:in `block in recognize'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:68:in `optimized_each'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:92:in `recognize'
rack-mount (0.6.14) lib/rack/mount/route_set.rb:139:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:493:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/head.rb:14:in `call'
rack (1.2.4) lib/rack/methodoverride.rb:24:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/params_parser.rb:21:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/flash.rb:182:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/session/abstract_store.rb:149:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/cookies.rb:302:in `call'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:32:in `block in call'
/home/rubys/git/rails/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb:28:in `cache'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:12:in `cache'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:31:in `call'
/home/rubys/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:354:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/callbacks.rb:46:in `block in call'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:416:in `_run_call_callbacks'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/callbacks.rb:44:in `call'
rack (1.2.4) lib/rack/sendfile.rb:106:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/remote_ip.rb:48:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/show_exceptions.rb:47:in `call'
/home/rubys/git/rails/railties/lib/rails/rack/logger.rb:13:in `call'
rack (1.2.4) lib/rack/runtime.rb:17:in `call'
/home/rubys/git/rails/activesupport/lib/active_support/cache/strategy/local_cache.rb:72:in `call'
rack (1.2.4) lib/rack/lock.rb:11:in `block in call'
<internal:prelude>:10:in `synchronize'
rack (1.2.4) lib/rack/lock.rb:11:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/static.rb:30:in `call'
/home/rubys/git/rails/railties/lib/rails/application.rb:168:in `call'
/home/rubys/git/rails/railties/lib/rails/application.rb:77:in `method_missing'
/home/rubys/git/rails/railties/lib/rails/rack/log_tailer.rb:14:in `call'
rack (1.2.4) lib/rack/content_length.rb:13:in `call'
rack (1.2.4) lib/rack/handler/webrick.rb:52:in `service'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'
Parameters:
{"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}
_csrf_token: "Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM=" session_id: "e30cf691d6444969133b914ce7207773"
CONTENT_LENGTH: "104" CONTENT_TYPE: "application/x-www-form-urlencoded" GATEWAY_INTERFACE: "CGI/1.1" HTTP_ACCEPT: "*/*" HTTP_COOKIE: "_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly" HTTP_HOST: "localhost:3000" HTTP_USER_AGENT: "Ruby" HTTP_VERSION: "HTTP/1.1" PATH_INFO: "/people" QUERY_STRING: "" REMOTE_ADDR: "127.0.0.1" REMOTE_HOST: "localhost" REQUEST_METHOD: "POST" REQUEST_PATH: "/" REQUEST_URI: "http://localhost:3000/people" SCRIPT_NAME: "" SERVER_NAME: "localhost" SERVER_PORT: "3000" SERVER_PROTOCOL: "HTTP/1.1" SERVER_SOFTWARE: "WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09)" action_controller.instance: #<PeopleController:0x00000003b7dd80 @action_has_layout=true, @view_context_class=nil, @_headers={"Content-Type"=>"text/html"}, @_status=200, @_response=#<ActionDispatch::Response:0x00000003b7db00 @writer=#<Proc:0x00000003b7da38@/home/rubys/git/rails/actionpack/lib/action_dispatch/http/response.rb:43 (lambda)>, @block=nil, @length=0, @header={}, @status=200, @body=[], @cookie=[], @sending_file=false, @blank=false, @cache_control={}, @etag=nil, @request=#<ActionDispatch::Request:0x00000003b7db28 @env={"CONTENT_LENGTH"=>"104", "CONTENT_TYPE"=>"application/x-www-form-urlencoded", "GATEWAY_INTERFACE"=>"CGI/1.1", "PATH_INFO"=>"/people", "QUERY_STRING"=>"", "REMOTE_ADDR"=>"127.0.0.1", "REMOTE_HOST"=>"localhost", "REQUEST_METHOD"=>"POST", "REQUEST_URI"=>"http://localhost:3000/people", "SCRIPT_NAME"=>"", "SERVER_NAME"=>"localhost", "SERVER_PORT"=>"3000", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09)", "HTTP_ACCEPT"=>"*/*", "HTTP_USER_AGENT"=>"Ruby", "HTTP_COOKIE"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "HTTP_HOST"=>"localhost:3000", "rack.version"=>[1, 1], "rack.input"=>#<StringIO:0x000000025dab18>, "rack.errors"=>#<IO:<STDERR>>, "rack.multithread"=>false, "rack.multiprocess"=>false, "rack.run_once"=>false, "rack.url_scheme"=>"http", "HTTP_VERSION"=>"HTTP/1.1", "REQUEST_PATH"=>"/", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.secret_token"=>"de6bc674afe48e7290972f4a6f0ab502bb4a2c3d2c8c531545921aa1ed2cedd1ad7de8d11e2cdfd21e0d171bd1c7a2d78fc76c188a34754c3d4b2012d8eedeaf", "action_dispatch.show_exceptions"=>true, "action_dispatch.remote_ip"=>127.0.0.1, "rack.session"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.session.options"=>{:path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :id=>"e30cf691d6444969133b914ce7207773"}, "rack.request.cookie_string"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "rack.request.cookie_hash"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.cookies"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.request.unsigned_session_cookie"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "action_dispatch.request.content_type"=>application/x-www-form-urlencoded, "rack.request.form_input"=>#<StringIO:0x000000025dab18>, "rack.request.form_hash"=>{"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.request.form_vars"=>"person%5bname%5d=Dave&utf8=%e2%9c%93&authenticity_token=Mn3euQUCwNO%2f0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM%3d", "action_dispatch.request.path_parameters"=>{:controller=>"people", :action=>"index"}, "action_controller.instance"=>#<PeopleController:0x00000003b7dd80 ...>, "action_dispatch.request.request_parameters"=>{"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.request.query_string"=>"", "rack.request.query_hash"=>{}, "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.parameters"=>{"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM=", "controller"=>"people", "action"=>"index"}, "action_dispatch.request.accepts"=>[*/*], "action_dispatch.request.formats"=>[*/*]}, @request_method="POST", @filtered_parameters={"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM=", "controller"=>"people", "action"=>"index"}, @method="POST", @fullpath="/people">>, @_request=#<ActionDispatch::Request:0x00000003b7db28 @env={"CONTENT_LENGTH"=>"104", "CONTENT_TYPE"=>"application/x-www-form-urlencoded", "GATEWAY_INTERFACE"=>"CGI/1.1", "PATH_INFO"=>"/people", "QUERY_STRING"=>"", "REMOTE_ADDR"=>"127.0.0.1", "REMOTE_HOST"=>"localhost", "REQUEST_METHOD"=>"POST", "REQUEST_URI"=>"http://localhost:3000/people", "SCRIPT_NAME"=>"", "SERVER_NAME"=>"localhost", "SERVER_PORT"=>"3000", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09)", "HTTP_ACCEPT"=>"*/*", "HTTP_USER_AGENT"=>"Ruby", "HTTP_COOKIE"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "HTTP_HOST"=>"localhost:3000", "rack.version"=>[1, 1], "rack.input"=>#<StringIO:0x000000025dab18>, "rack.errors"=>#<IO:<STDERR>>, "rack.multithread"=>false, "rack.multiprocess"=>false, "rack.run_once"=>false, "rack.url_scheme"=>"http", "HTTP_VERSION"=>"HTTP/1.1", "REQUEST_PATH"=>"/", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.secret_token"=>"de6bc674afe48e7290972f4a6f0ab502bb4a2c3d2c8c531545921aa1ed2cedd1ad7de8d11e2cdfd21e0d171bd1c7a2d78fc76c188a34754c3d4b2012d8eedeaf", "action_dispatch.show_exceptions"=>true, "action_dispatch.remote_ip"=>127.0.0.1, "rack.session"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.session.options"=>{:path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :id=>"e30cf691d6444969133b914ce7207773"}, "rack.request.cookie_string"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "rack.request.cookie_hash"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.cookies"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.request.unsigned_session_cookie"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "action_dispatch.request.content_type"=>application/x-www-form-urlencoded, "rack.request.form_input"=>#<StringIO:0x000000025dab18>, "rack.request.form_hash"=>{"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.request.form_vars"=>"person%5bname%5d=Dave&utf8=%e2%9c%93&authenticity_token=Mn3euQUCwNO%2f0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM%3d", "action_dispatch.request.path_parameters"=>{:controller=>"people", :action=>"index"}, "action_controller.instance"=>#<PeopleController:0x00000003b7dd80 ...>, "action_dispatch.request.request_parameters"=>{"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.request.query_string"=>"", "rack.request.query_hash"=>{}, "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.parameters"=>{"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM=", "controller"=>"people", "action"=>"index"}, "action_dispatch.request.accepts"=>[*/*], "action_dispatch.request.formats"=>[*/*]}, @request_method="POST", @filtered_parameters={"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM=", "controller"=>"people", "action"=>"index"}, @method="POST", @fullpath="/people">, @_env={"CONTENT_LENGTH"=>"104", "CONTENT_TYPE"=>"application/x-www-form-urlencoded", "GATEWAY_INTERFACE"=>"CGI/1.1", "PATH_INFO"=>"/people", "QUERY_STRING"=>"", "REMOTE_ADDR"=>"127.0.0.1", "REMOTE_HOST"=>"localhost", "REQUEST_METHOD"=>"POST", "REQUEST_URI"=>"http://localhost:3000/people", "SCRIPT_NAME"=>"", "SERVER_NAME"=>"localhost", "SERVER_PORT"=>"3000", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09)", "HTTP_ACCEPT"=>"*/*", "HTTP_USER_AGENT"=>"Ruby", "HTTP_COOKIE"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "HTTP_HOST"=>"localhost:3000", "rack.version"=>[1, 1], "rack.input"=>#<StringIO:0x000000025dab18>, "rack.errors"=>#<IO:<STDERR>>, "rack.multithread"=>false, "rack.multiprocess"=>false, "rack.run_once"=>false, "rack.url_scheme"=>"http", "HTTP_VERSION"=>"HTTP/1.1", "REQUEST_PATH"=>"/", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.secret_token"=>"de6bc674afe48e7290972f4a6f0ab502bb4a2c3d2c8c531545921aa1ed2cedd1ad7de8d11e2cdfd21e0d171bd1c7a2d78fc76c188a34754c3d4b2012d8eedeaf", "action_dispatch.show_exceptions"=>true, "action_dispatch.remote_ip"=>127.0.0.1, "rack.session"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.session.options"=>{:path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :id=>"e30cf691d6444969133b914ce7207773"}, "rack.request.cookie_string"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "rack.request.cookie_hash"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.cookies"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.request.unsigned_session_cookie"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "action_dispatch.request.content_type"=>application/x-www-form-urlencoded, "rack.request.form_input"=>#<StringIO:0x000000025dab18>, "rack.request.form_hash"=>{"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.request.form_vars"=>"person%5bname%5d=Dave&utf8=%e2%9c%93&authenticity_token=Mn3euQUCwNO%2f0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM%3d", "action_dispatch.request.path_parameters"=>{:controller=>"people", :action=>"index"}, "action_controller.instance"=>#<PeopleController:0x00000003b7dd80 ...>, "action_dispatch.request.request_parameters"=>{"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.request.query_string"=>"", "rack.request.query_hash"=>{}, "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.parameters"=>{"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM=", "controller"=>"people", "action"=>"index"}, "action_dispatch.request.accepts"=>[*/*], "action_dispatch.request.formats"=>[*/*]}, @lookup_context=#<ActionView::LookupContext:0x00000003b7a2c0 @details_key=#<ActionView::LookupContext::DetailsKey:0x00000003340370 @hash=1596201653906138097>, @details={:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]}, @skip_default_locale=false, @frozen_formats=true, @view_paths=[/home/rubys/git/awdwr/edition3/work-192-30/namelist/app/views]>, @_action_name="index", @_response_body=nil, @_config={}, @_params={"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM=", "controller"=>"people", "action"=>"index"}, @person=#<Person id: 1, name: "Dave", created_at: "2011-12-25 01:05:26", updated_at: "2011-12-25 01:05:26">, @people=[#<Person id: 1, name: "Dave", created_at: "2011-12-25 01:05:26", updated_at: "2011-12-25 01:05:26">]> action_dispatch.cookies: {"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil} action_dispatch.parameter_filter: [:password] action_dispatch.remote_ip: 127.0.0.1 action_dispatch.request.accepts: [*/*] action_dispatch.request.content_type: application/x-www-form-urlencoded action_dispatch.request.formats: [*/*] action_dispatch.request.parameters: {"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM=", "controller"=>"people", "action"=>"index"} action_dispatch.request.path_parameters: {:controller=>"people", :action=>"index"} action_dispatch.request.query_parameters: {} action_dispatch.request.request_parameters: {"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="} action_dispatch.request.unsigned_session_cookie: {"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="} action_dispatch.secret_token: "de6bc674afe48e7290972f4a6f0ab502bb4a2c3d2c8c531545921aa1ed2cedd1ad7de8d11e2cdfd21e0d171bd1c7a2d78fc76c188a34754c3d4b2012d8eedeaf" action_dispatch.show_exceptions: true rack.errors: #<IO:<STDERR>> rack.input: #<StringIO:0x000000025dab18> rack.multiprocess: false rack.multithread: false rack.request.cookie_hash: {"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil} rack.request.cookie_string: "_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly" rack.request.form_hash: {"person"=>{"name"=>"Dave"}, "utf8"=>"✓", "authenticity_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="} rack.request.form_input: #<StringIO:0x000000025dab18> rack.request.form_vars: "person%5bname%5d=Dave&utf8=%e2%9c%93&authenticity_token=Mn3euQUCwNO%2f0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM%3d" rack.request.query_hash: {} rack.request.query_string: "" rack.run_once: false rack.session: {"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="} rack.session.options: {:path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :id=>"e30cf691d6444969133b914ce7207773"} rack.url_scheme: "http" rack.version: [1, 1]
Headers:
None
get /people
Showing /home/rubys/git/awdwr/edition3/work-192-30/namelist/app/views/people/index.html.erb where line #9 raised:
undefined method `length' for #<Enumerator: "Dave":chars>
Extracted source (around line #9):
6: <tr>
7: <td><%=h person.name %></td>
8: <td><%= person.name.length %></td>
9: <td><%= person.name.chars.length %></td>
10: <td><%=h person.name.chars.reverse %></td>
11: </tr>
12: <% end %>
Rails.root: /home/rubys/git/awdwr/edition3/work-192-30/namelist
app/views/people/index.html.erb:9:in `block in _app_views_people_index_html_erb__545044587366160019_26390580_3230059197627082313'
app/views/people/index.html.erb:5:in `each'
app/views/people/index.html.erb:5:in `_app_views_people_index_html_erb__545044587366160019_26390580_3230059197627082313'
/home/rubys/git/rails/actionpack/lib/action_view/template.rb:162:in `block in render'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:54:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_view/template.rb:154:in `render'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:59:in `block in _render_template'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `block in instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:56:in `_render_template'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:26:in `render'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:115:in `_render_template'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:109:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:47:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/compatibility.rb:55:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_string'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:93:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:17:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
/home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/benchmark.rb:310:in `realtime'
/home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:78:in `cleanup_view_runtime'
/home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:15:in `cleanup_view_runtime'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:5:in `send_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:150:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:11:in `process_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:436:in `_run__690484035493967909__process_action__4162604810476223443__callbacks'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:410:in `_run_process_action_callbacks'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:94:in `run_callbacks'
/home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:17:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `block in instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:119:in `process'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:41:in `process'
/home/rubys/git/rails/actionpack/lib/action_controller/metal.rb:138:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_controller/metal.rb:178:in `block in action'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:62:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:62:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:27:in `call'
rack-mount (0.6.14) lib/rack/mount/route_set.rb:148:in `block in call'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:93:in `block in recognize'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:68:in `optimized_each'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:92:in `recognize'
rack-mount (0.6.14) lib/rack/mount/route_set.rb:139:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:493:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/head.rb:14:in `call'
rack (1.2.4) lib/rack/methodoverride.rb:24:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/params_parser.rb:21:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/flash.rb:182:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/session/abstract_store.rb:149:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/cookies.rb:302:in `call'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:32:in `block in call'
/home/rubys/git/rails/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb:28:in `cache'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:12:in `cache'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:31:in `call'
/home/rubys/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:354:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/callbacks.rb:46:in `block in call'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:416:in `_run_call_callbacks'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/callbacks.rb:44:in `call'
rack (1.2.4) lib/rack/sendfile.rb:106:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/remote_ip.rb:48:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/show_exceptions.rb:47:in `call'
/home/rubys/git/rails/railties/lib/rails/rack/logger.rb:13:in `call'
rack (1.2.4) lib/rack/runtime.rb:17:in `call'
/home/rubys/git/rails/activesupport/lib/active_support/cache/strategy/local_cache.rb:72:in `call'
rack (1.2.4) lib/rack/lock.rb:11:in `block in call'
<internal:prelude>:10:in `synchronize'
rack (1.2.4) lib/rack/lock.rb:11:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/static.rb:30:in `call'
/home/rubys/git/rails/railties/lib/rails/application.rb:168:in `call'
/home/rubys/git/rails/railties/lib/rails/application.rb:77:in `method_missing'
/home/rubys/git/rails/railties/lib/rails/rack/log_tailer.rb:14:in `call'
rack (1.2.4) lib/rack/content_length.rb:13:in `call'
rack (1.2.4) lib/rack/handler/webrick.rb:52:in `service'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'
app/views/people/index.html.erb:9:in `block in _app_views_people_index_html_erb__545044587366160019_26390580_3230059197627082313'
app/views/people/index.html.erb:5:in `each'
app/views/people/index.html.erb:5:in `_app_views_people_index_html_erb__545044587366160019_26390580_3230059197627082313'
/home/rubys/git/rails/actionpack/lib/action_view/template.rb:162:in `block in render'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:54:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_view/template.rb:154:in `render'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:59:in `block in _render_template'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `block in instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:56:in `_render_template'
/home/rubys/git/rails/actionpack/lib/action_view/render/rendering.rb:26:in `render'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:115:in `_render_template'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:109:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:47:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/compatibility.rb:55:in `render_to_body'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_string'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:93:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:17:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
/home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/benchmark.rb:310:in `realtime'
/home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:78:in `cleanup_view_runtime'
/home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:15:in `cleanup_view_runtime'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:5:in `send_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:150:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:11:in `process_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:436:in `_run__690484035493967909__process_action__4162604810476223443__callbacks'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:410:in `_run_process_action_callbacks'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:94:in `run_callbacks'
/home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:17:in `process_action'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `block in instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
/home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:52:in `instrument'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
/home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:119:in `process'
/home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:41:in `process'
/home/rubys/git/rails/actionpack/lib/action_controller/metal.rb:138:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_controller/metal.rb:178:in `block in action'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:62:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:62:in `dispatch'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:27:in `call'
rack-mount (0.6.14) lib/rack/mount/route_set.rb:148:in `block in call'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:93:in `block in recognize'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:68:in `optimized_each'
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:92:in `recognize'
rack-mount (0.6.14) lib/rack/mount/route_set.rb:139:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/routing/route_set.rb:493:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/head.rb:14:in `call'
rack (1.2.4) lib/rack/methodoverride.rb:24:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/params_parser.rb:21:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/flash.rb:182:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/session/abstract_store.rb:149:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/cookies.rb:302:in `call'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:32:in `block in call'
/home/rubys/git/rails/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb:28:in `cache'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:12:in `cache'
/home/rubys/git/rails/activerecord/lib/active_record/query_cache.rb:31:in `call'
/home/rubys/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:354:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/callbacks.rb:46:in `block in call'
/home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:416:in `_run_call_callbacks'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/callbacks.rb:44:in `call'
rack (1.2.4) lib/rack/sendfile.rb:106:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/remote_ip.rb:48:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/show_exceptions.rb:47:in `call'
/home/rubys/git/rails/railties/lib/rails/rack/logger.rb:13:in `call'
rack (1.2.4) lib/rack/runtime.rb:17:in `call'
/home/rubys/git/rails/activesupport/lib/active_support/cache/strategy/local_cache.rb:72:in `call'
rack (1.2.4) lib/rack/lock.rb:11:in `block in call'
<internal:prelude>:10:in `synchronize'
rack (1.2.4) lib/rack/lock.rb:11:in `call'
/home/rubys/git/rails/actionpack/lib/action_dispatch/middleware/static.rb:30:in `call'
/home/rubys/git/rails/railties/lib/rails/application.rb:168:in `call'
/home/rubys/git/rails/railties/lib/rails/application.rb:77:in `method_missing'
/home/rubys/git/rails/railties/lib/rails/rack/log_tailer.rb:14:in `call'
rack (1.2.4) lib/rack/content_length.rb:13:in `call'
rack (1.2.4) lib/rack/handler/webrick.rb:52:in `service'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
/home/rubys/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'
Parameters:
None
_csrf_token: "Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM=" session_id: "e30cf691d6444969133b914ce7207773"
GATEWAY_INTERFACE: "CGI/1.1" HTTP_ACCEPT: "text/html" HTTP_COOKIE: "_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly" HTTP_HOST: "localhost:3000" HTTP_USER_AGENT: "Ruby" HTTP_VERSION: "HTTP/1.1" PATH_INFO: "/people" QUERY_STRING: "" REMOTE_ADDR: "127.0.0.1" REMOTE_HOST: "localhost" REQUEST_METHOD: "GET" REQUEST_PATH: "/" REQUEST_URI: "http://localhost:3000/people" SCRIPT_NAME: "" SERVER_NAME: "localhost" SERVER_PORT: "3000" SERVER_PROTOCOL: "HTTP/1.1" SERVER_SOFTWARE: "WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09)" action_controller.instance: #<PeopleController:0x0000000364f548 @action_has_layout=true, @view_context_class=nil, @_headers={"Content-Type"=>"text/html"}, @_status=200, @_response=#<ActionDispatch::Response:0x0000000364f200 @writer=#<Proc:0x0000000364f0e8@/home/rubys/git/rails/actionpack/lib/action_dispatch/http/response.rb:43 (lambda)>, @block=nil, @length=0, @header={}, @status=200, @body=[], @cookie=[], @sending_file=false, @blank=false, @cache_control={}, @etag=nil, @request=#<ActionDispatch::Request:0x0000000364f250 @env={"GATEWAY_INTERFACE"=>"CGI/1.1", "PATH_INFO"=>"/people", "QUERY_STRING"=>"", "REMOTE_ADDR"=>"127.0.0.1", "REMOTE_HOST"=>"localhost", "REQUEST_METHOD"=>"GET", "REQUEST_URI"=>"http://localhost:3000/people", "SCRIPT_NAME"=>"", "SERVER_NAME"=>"localhost", "SERVER_PORT"=>"3000", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09)", "HTTP_ACCEPT"=>"text/html", "HTTP_USER_AGENT"=>"Ruby", "HTTP_COOKIE"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "HTTP_HOST"=>"localhost:3000", "rack.version"=>[1, 1], "rack.input"=>#<StringIO:0x000000038c94e0>, "rack.errors"=>#<IO:<STDERR>>, "rack.multithread"=>false, "rack.multiprocess"=>false, "rack.run_once"=>false, "rack.url_scheme"=>"http", "HTTP_VERSION"=>"HTTP/1.1", "REQUEST_PATH"=>"/", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.secret_token"=>"de6bc674afe48e7290972f4a6f0ab502bb4a2c3d2c8c531545921aa1ed2cedd1ad7de8d11e2cdfd21e0d171bd1c7a2d78fc76c188a34754c3d4b2012d8eedeaf", "action_dispatch.show_exceptions"=>true, "action_dispatch.remote_ip"=>127.0.0.1, "rack.session"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.session.options"=>{:path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :id=>"e30cf691d6444969133b914ce7207773"}, "rack.request.cookie_string"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "rack.request.cookie_hash"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.cookies"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.request.unsigned_session_cookie"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "action_dispatch.request.path_parameters"=>{:controller=>"people", :action=>"index"}, "action_controller.instance"=>#<PeopleController:0x0000000364f548 ...>, "action_dispatch.request.content_type"=>nil, "action_dispatch.request.request_parameters"=>{}, "rack.request.query_string"=>"", "rack.request.query_hash"=>{}, "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.parameters"=>{"controller"=>"people", "action"=>"index"}, "action_dispatch.request.accepts"=>[text/html], "action_dispatch.request.formats"=>[text/html]}, @request_method="GET", @filtered_parameters={"controller"=>"people", "action"=>"index"}, @method="GET", @fullpath="/people">>, @_request=#<ActionDispatch::Request:0x0000000364f250 @env={"GATEWAY_INTERFACE"=>"CGI/1.1", "PATH_INFO"=>"/people", "QUERY_STRING"=>"", "REMOTE_ADDR"=>"127.0.0.1", "REMOTE_HOST"=>"localhost", "REQUEST_METHOD"=>"GET", "REQUEST_URI"=>"http://localhost:3000/people", "SCRIPT_NAME"=>"", "SERVER_NAME"=>"localhost", "SERVER_PORT"=>"3000", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09)", "HTTP_ACCEPT"=>"text/html", "HTTP_USER_AGENT"=>"Ruby", "HTTP_COOKIE"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "HTTP_HOST"=>"localhost:3000", "rack.version"=>[1, 1], "rack.input"=>#<StringIO:0x000000038c94e0>, "rack.errors"=>#<IO:<STDERR>>, "rack.multithread"=>false, "rack.multiprocess"=>false, "rack.run_once"=>false, "rack.url_scheme"=>"http", "HTTP_VERSION"=>"HTTP/1.1", "REQUEST_PATH"=>"/", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.secret_token"=>"de6bc674afe48e7290972f4a6f0ab502bb4a2c3d2c8c531545921aa1ed2cedd1ad7de8d11e2cdfd21e0d171bd1c7a2d78fc76c188a34754c3d4b2012d8eedeaf", "action_dispatch.show_exceptions"=>true, "action_dispatch.remote_ip"=>127.0.0.1, "rack.session"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.session.options"=>{:path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :id=>"e30cf691d6444969133b914ce7207773"}, "rack.request.cookie_string"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "rack.request.cookie_hash"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.cookies"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.request.unsigned_session_cookie"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "action_dispatch.request.path_parameters"=>{:controller=>"people", :action=>"index"}, "action_controller.instance"=>#<PeopleController:0x0000000364f548 ...>, "action_dispatch.request.content_type"=>nil, "action_dispatch.request.request_parameters"=>{}, "rack.request.query_string"=>"", "rack.request.query_hash"=>{}, "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.parameters"=>{"controller"=>"people", "action"=>"index"}, "action_dispatch.request.accepts"=>[text/html], "action_dispatch.request.formats"=>[text/html]}, @request_method="GET", @filtered_parameters={"controller"=>"people", "action"=>"index"}, @method="GET", @fullpath="/people">, @_env={"GATEWAY_INTERFACE"=>"CGI/1.1", "PATH_INFO"=>"/people", "QUERY_STRING"=>"", "REMOTE_ADDR"=>"127.0.0.1", "REMOTE_HOST"=>"localhost", "REQUEST_METHOD"=>"GET", "REQUEST_URI"=>"http://localhost:3000/people", "SCRIPT_NAME"=>"", "SERVER_NAME"=>"localhost", "SERVER_PORT"=>"3000", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09)", "HTTP_ACCEPT"=>"text/html", "HTTP_USER_AGENT"=>"Ruby", "HTTP_COOKIE"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "HTTP_HOST"=>"localhost:3000", "rack.version"=>[1, 1], "rack.input"=>#<StringIO:0x000000038c94e0>, "rack.errors"=>#<IO:<STDERR>>, "rack.multithread"=>false, "rack.multiprocess"=>false, "rack.run_once"=>false, "rack.url_scheme"=>"http", "HTTP_VERSION"=>"HTTP/1.1", "REQUEST_PATH"=>"/", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.secret_token"=>"de6bc674afe48e7290972f4a6f0ab502bb4a2c3d2c8c531545921aa1ed2cedd1ad7de8d11e2cdfd21e0d171bd1c7a2d78fc76c188a34754c3d4b2012d8eedeaf", "action_dispatch.show_exceptions"=>true, "action_dispatch.remote_ip"=>127.0.0.1, "rack.session"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "rack.session.options"=>{:path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :id=>"e30cf691d6444969133b914ce7207773"}, "rack.request.cookie_string"=>"_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly", "rack.request.cookie_hash"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.cookies"=>{"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil}, "action_dispatch.request.unsigned_session_cookie"=>{"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="}, "action_dispatch.request.path_parameters"=>{:controller=>"people", :action=>"index"}, "action_controller.instance"=>#<PeopleController:0x0000000364f548 ...>, "action_dispatch.request.content_type"=>nil, "action_dispatch.request.request_parameters"=>{}, "rack.request.query_string"=>"", "rack.request.query_hash"=>{}, "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.parameters"=>{"controller"=>"people", "action"=>"index"}, "action_dispatch.request.accepts"=>[text/html], "action_dispatch.request.formats"=>[text/html]}, @lookup_context=#<ActionView::LookupContext:0x0000000364e030 @details_key=#<ActionView::LookupContext::DetailsKey:0x00000003340370 @hash=1596201653906138097>, @details={:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]}, @skip_default_locale=false, @frozen_formats=true, @view_paths=[/home/rubys/git/awdwr/edition3/work-192-30/namelist/app/views]>, @_action_name="index", @_response_body=nil, @_config={}, @_params={"controller"=>"people", "action"=>"index"}, @person=#<Person id: nil, name: nil, created_at: nil, updated_at: nil>, @people=[#<Person id: 1, name: "Dave", created_at: "2011-12-25 01:05:26", updated_at: "2011-12-25 01:05:26">]> action_dispatch.cookies: {"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil} action_dispatch.parameter_filter: [:password] action_dispatch.remote_ip: 127.0.0.1 action_dispatch.request.accepts: [text/html] action_dispatch.request.content_type: nil action_dispatch.request.formats: [text/html] action_dispatch.request.parameters: {"controller"=>"people", "action"=>"index"} action_dispatch.request.path_parameters: {:controller=>"people", :action=>"index"} action_dispatch.request.query_parameters: {} action_dispatch.request.request_parameters: {} action_dispatch.request.unsigned_session_cookie: {"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="} action_dispatch.secret_token: "de6bc674afe48e7290972f4a6f0ab502bb4a2c3d2c8c531545921aa1ed2cedd1ad7de8d11e2cdfd21e0d171bd1c7a2d78fc76c188a34754c3d4b2012d8eedeaf" action_dispatch.show_exceptions: true rack.errors: #<IO:<STDERR>> rack.input: #<StringIO:0x000000038c94e0> rack.multiprocess: false rack.multithread: false rack.request.cookie_hash: {"_namelist_session"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY=--160942c5c76ebe2f9a92e9c5e0290839e453d1ea", "path"=>"/", "HttpOnly"=>nil} rack.request.cookie_string: "_namelist_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiIlZTMwY2Y2OTFkNjQ0NDk2OTEzM2I5MTRjZTcyMDc3NzNJIhBfY3NyZl90b2tlbgY7AEZJIjFNbjNldVFVQ3dOTy8welhPZjZlbzNwYkJZWXRQR1BYMk1QaWtjRjNicXhNPQY7AEY%3D--160942c5c76ebe2f9a92e9c5e0290839e453d1ea; path=/; HttpOnly" rack.request.query_hash: {} rack.request.query_string: "" rack.run_once: false rack.session: {"session_id"=>"e30cf691d6444969133b914ce7207773", "_csrf_token"=>"Mn3euQUCwNO/0zXOf6eo3pbBYYtPGPX2MPikcF3bqxM="} rack.session.options: {:path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :id=>"e30cf691d6444969133b914ce7207773"} rack.url_scheme: "http" rack.version: [1, 1]
Headers:
None
sqlite3> select name,length(name) from people where name like 'G%'