2013-02-25 32 views
0

在我看來,我有如何正確使用搜索功能和json解析器?

<%= form_tag searches_path, method: 'get', do %> 
    <p> 
     <%= text_field_tag :search %> 
     <%= submit_tag "Search", name: nil %> 
    </p> 
<% end %> 

,並在我的控制器我有

class SearchesController < ApplicationController 
    def index 
    raw_result = params[:search] 
    result = raw_result.gsub(/\s+/, "+") 
    movie_details = HTTParty.get("http://imdbapi.org/?title="+result+"&type=json") 
    @searches = ActiveSupport::JSON.decode(movie_details) 


    end 
end 

當我訪問我得到一個未定義的方法`GSUB」的零的觀點:NilClass。我猜是因爲該表格尚未提交。我是否正確實施了json解析器?

+0

在第一次訪問時,你認爲你的params [:search]在哪裏設置? – oldergod 2013-02-25 02:53:17

+0

當我點擊提交按鈕它被設置,所以我需要有一個默認值raw_result?或者如果raw_result.exists? – emailnitram 2013-02-25 03:09:09

+1

是的,在第一次訪問時,'params [:search]'是'nil',所以你可以寫'raw_result = params [:search] || 「默認值」# – oldergod 2013-02-25 04:05:44

回答

1
raw_result = params[:search] || "default value"