Я построил базовую форму поиска, которая запрашивает один столбец в одной таблице моего приложения. Я следил за эпизодом 37 Railscast: http://railscasts.com/episodes/37-simple-search-form. Примечание. Я только что опубликовал еще один вопрос, связанный с поиском, но это совершенно другой вопрос.
В моем приложении поиск запрашивает столбец почтового индекса в моей таблице профилей и возвращает список профилей, которые содержат правильный почтовый индекс.
Вот моя проблема. В настоящее время, когда пользователь оставляет поле ввода пустым и нажимает кнопку отправки, при поиске отображаются все профили на сайте. Я не хочу, чтобы это случилось. Если поле пустое, я не хочу, чтобы поиск проходил. Я хотел бы либо сделать флэш-уведомление, либо выдать ошибку, объясняющую, что пользователю необходимо ввести почтовый индекс, чтобы продолжить.
Вот мои настройки:
КОНТРОЛЛЕР ПРОФИЛЕЙ
def index
@profiles = Profile.search(params[:search])
end
ПРОФИЛЬНАЯ МОДЕЛЬ
def self.search(search)
if search
find(:all, :conditions => ['zip LIKE ?', "%#{search}%"])
else
find(:all)
end
end
PROFILE / index.html.erb
<% form_tag ('/profiles', :method => :get) do %>
<%= text_field_tag :search, params[:search], :maxlength => 5 %>
<%= submit_tag "Go", :name => nil %>
<% end %>
Спасибо!