2010-02-20 76 views
0

我正在Ruby on rails 2.3.2上工作,我想通過回發保留搜索文本,以便在此之後填充它。通過會話保持搜索文本

現在,搜索頁面在控制器上被稱爲「搜索」的方法調用。一旦搜索完成我渲染文件是這樣的:

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

我想保存這樣一個會議的搜索:

session[:text_to_search] = params[:txtSearch]

,然後指定其值迴文本框。該文本框實際上是一個html input type="text"

我該怎麼做?

回答

1

注意,因爲你在渲染頁面,而不是重定向到一個新的頁面,你仍然可以在該頁面訪問參數...

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

應該工作。

,如果你堅持使用會話,那麼:

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

感謝。但我有一個問題。如果文本字段爲空,我已經設置了文本字段來顯示一些文本,並且我已經設置了一個默認值,如「輸入要在此處搜索的文本」。所以,如果我不把它拿出來,它會顯示這個文本,而不是我搜索到的那個。那麼,如何才能檢查params [:text_to_search]是否爲空,因此只有當params [:text_to_search]爲空時,纔可以設置其值=「輸入要搜索的文本...」。 – 2010-02-20 00:57:37

+1

<%= text_field_tag:txtSearch,params [:text_to_search] .blank? ? 「默認文本」:params [:text_to_search]%> – emh 2010-02-20 01:16:37