2015-10-13 33 views
0

的URI獲取肯塔基州(KY)國家氣象報告, 「穆雷」 城市(apikey替換)如何修正錯誤的URI(不URI?在Ruby on Rails的,傳遞變量作爲參數的URI

http://api.wunderground.com/api/apikey/conditions/q/KY/murray.json

我想使用輸入框輸入狀態(例如:KY)和城市,並將它們作爲變量傳遞給URI,以便我可以使頁面動態變爲用戶的選擇,因此試圖將URI修改爲:

http://api.wunderground.com/api/apikey/conditions/q/# {state} /#{city} .json

我無法傳遞變量作爲參數傳遞給該API的URI和收到錯誤

「壞URI(是不是URI):

我weather.erb文件內容(部分代碼):

<% provide(:title, "Weather") %> 
<h1>Weather Forecast</h1> 
    <%=form_tag do%> 
    <%=label_tag 'Enter State (Eg:KY)'%> 
    <%=text_field_tag 'state'%><br> 
    <%=label_tag 'Enter City (Eg:Murray)'%> 
    <%=text_field_tag 'city'%><br> 
    <%=submit_tag 'submit '%> 
    <%end%> 


<% 
city = yield(:city).strip 
state = yield(:state).strip 
require 'open-uri' 
require 'json' 
open('http://api.wunderground.com/api/apikey/conditions/q/#{state}/#{city}.json') do |f| 
.......... 
........ 
..... 
%> 

我完成了修改路由,application_controller並堅持這一點。

回答

2

更換

'http://api.wunderground.com/api/apikey/conditions/q/#{state}/#{city}.json' 

"http://api.wunderground.com/api/apikey/conditions/q/#{state}/#{city}.json" 

因爲單引號不插變量。

相關問題