在Rails中从视图表单更新控制器中的变量

时间:2015-07-08 19:00:46

标签: ruby-on-rails

我在这里有看法:

<%= 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

1 个答案:

答案 0 :(得分:0)

所以如果有人遇到这个问题,我想出了自己的问题。我不清楚提交按钮在做什么,但我不应该获得“/ update”路径并且应该发布到“/ update”路径。我拿出了方法:从视图中“获取”。然后我在routes.rb文件夹中添加了一个post请求到更新路径。然后我可以自由地使用存储在params [:city]和params [:state]中的那些变量,并且可以显示它们,但是我想要它。