どこのコードが悪くて、idを拾えないのかわかりません。
ご教授お願いいたします。

エラー
コントローラー  people_controller.rb

class PeopleController < ApplicationController
  layout 'people'
def index
  @msg = 'Person data.'
  @data = Person.all
end
def show
  @msg = "Indexe data."
  @data = Person.find(params[:id])
end
def find
  @msg = 'please type search word...'
  @people = Array.new
  if request.post? then
    obj = Person.find params['find']
    @people.push obj
  end
end

ビュー  show.html.erb

<h1>People#index</h1>
<p>
    <%= @msg %>
</p>
<pre>
<table>
  <tr><th>Id</th>
    <td><%= @data.id %></td></tr>
  <tr><th>Name</th>
    <td><%= @data.name %></td></tr>
  <tr><th>Age</th>
    <td><%= @data.age %></td></tr>
  <tr><th>Mail</th>
    <td><%= @data.mail %></td></tr>
</table>
</pre> 

ビュー  find.html.erb

<h1>People#Find</h1>
<p>
    <%= @msg %>
</p>
<table>
  <%= form_tag(controller: "people", action: "find") do %>
  <tr><th>FIND</th>
    <td><%= text_field_tag("find") %></td>
  <tr>
    <td><%= submit_tag("Click") %></td>
  </tr>
 <% end %>
</table>
<table>
  <tr>
    <th>Id</th>
    <th>Name</th>
    <th>Age</th>
    <th>Mail</th>
  </tr>
  <% @people.each do |obj| %>
    <tr>
      <td><%= obj.id %></td>
      <td><%= obj.name %></td>
      <td><%= obj.age %></td>
      <td><%= obj.mail %></td>
    </tr>
   <% end %>
 </table>

ルート  routes.rb

get 'people/:id', to: 'people#show'
get 'people/find', to: 'people#find'
post 'people/find', to: 'people#find'

データベース  db < migrate < hoge_create_people.rb

class CreatePeople < ActiveRecord::Migration[5.0]
  def change
    create_table :people do |t|
      t.text :name
      t.integer :age
      t.text :mail

      t.timestamps
    end
  end
end

ビューのキャプチャ

一覧