Я создаю игрушку Rails приложение. Я создал эшафот для моих объектов Post. Теперь я хочу добавить некоторые функции поиска в вид, созданный эшафотом. Для добавления функции поиска я следую http://railscasts.com/episodes/37-simple-search-form.форма поиска не отображается
Чтобы приложение/просмотров/сообщений/index.html.erb добавить
<% form_tag posts_path, :method => 'get' do %>
<p>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search", :name => nil %>
</p>
<% end %>
, а затем код для перечисления следовать.
В контроллерах/posts_controller.rb У меня есть
class PostsController < ApplicationController
# GET /posts
# GET /posts.json
def index
@posts = Post.search(params[:search])
respond_to do |format|
format.html # index.html.erb
format.json { render json: @posts }
end
end
В модели/post.rb У меня есть
class Post < ActiveRecord::Base
attr_accessible :description, :image_url, :title
validates :name, :presence => true
validates :title, :presence => true,
:length => { :minimum => 5 }
def self.search(search)
if search
find(:all, :conditions => ['name LIKE?', "%#{$search}%"])
else
find(:all)
end
end
end
Когда я запускаю сервер, я не получаю никаких ошибок, но форма не отображается. Я посмотрел на сгенерированный источник страницы, и там нет формы. Что происходит? Есть ли способ отладки таких ситуаций?