我在这里有看法:
<%= form_tag("/update", method: "get") do %>
<%= text_field_tag(:ucity) %>
<%= text_field_tag(:state) %>
<%= submit_tag("submits") %>
<% end %>
应该传递给我的控制器并使用params [:ucity]和params [:ustate]
访问这些变量def update_params
uparams = { :state => params[:ustate], :city => params[:ucity] }
end
def update
update_params
@scraper = Scraper.new(update_params)
end
但是当我有
时,我无法弄清楚如何让它们进入我的模型def fetch_10DayForecast(city, state)
HTTParty.get("http://api.wunderground.com/api/ddaf27afe5015709/forecast10day/q/" + state.to_s + "/" + city.to_s + ".xml")
end
def initialize(dparams)
forecast_hash = fetch_10DayForecast(dparams[:city], dparams[:state])
forecast(forecast_hash)
end
答案 0 :(得分:0)
所以如果有人遇到这个问题,我想出了自己的问题。我不清楚提交按钮在做什么,但我不应该获得“/ update”路径并且应该发布到“/ update”路径。我拿出了方法:从视图中“获取”。然后我在routes.rb文件夹中添加了一个post请求到更新路径。然后我可以自由地使用存储在params [:city]和params [:state]中的那些变量,并且可以显示它们,但是我想要它。