2010-02-20 2 views
0

Я работаю над Ruby on rails 2.3.2, и я хочу сохранить текст поиска через postback, чтобы потом заполнить его.Продолжайте искать текст через сеанс

Прямо сейчас, страница поиска вызывается методом «поиск» на контроллере. После завершения поиска я вынести этот файл таким образом:

render :file => '/search/index', :layout => true, :use_full_path => true 

я хотел бы сохранить поиск на сессии так:

session[:text_to_search] = params[:txtSearch]

, а затем присвоить его значение обратно в текстовое окно. Текстовое поле на самом деле является html input type="text".

Как я могу это сделать?

ответ

1

отмечают, что, так как вы отображения страницы, в отличие от перенаправлять на новую страницу, вы можете получить доступ к Params из в этой страницы ...

<%= text_field_tag :txtSearch, params[:txtSearch] %> 

должен работать.

, если вы настаиваете на использовании сессии затем:

<%= text_field_tag :txtSearch, session[:text_to_search] %> 
+0

Спасибо. У меня проблема. Я установил текстовое поле для отображения некоторого текста, если он пуст, а также я установил значение по умолчанию, например «Введите текст для поиска здесь». Итак, если я этого не сделаю, он покажет этот текст, а не тот, который я искал. Итак, как я могу проверить, является ли params [: text_to_search] пустым или нет, поэтому я могу установить его значение = «набирать текст для поиска ...», только когда params [: text_to_search] пуст? –

+1

<% = text_field_tag: txtSearch, params [: text_to_search] .blank? ? «Текст по умолчанию»: params [: text_to_search]%> – emh

Смежные вопросы