我正在構建一個Web界面以伴隨我正在構建的移動應用程序。我有一個下拉選擇菜單,列出了一堆位置。嘗試在我的控制器中觸發一個操作,當在下拉菜單中選擇一個選項但獲取一個無路由匹配錯誤
在選擇一個位置時,我想打電話給我的控制器中的某個方法,並在選定的位置(每個位置有多個目的地)內抓取一些目的地。
然後,我想用這些結果呈現我的展示模板,以允許用戶選擇目的地並進行預訂。
這是我到目前爲止有:
我和度假村的列表視圖:
<%= form_tag :url => { :action => :show } do %>
<%= select_tag :resort , options_for_select(@resorts), :prompt => 'Select Resort', :onchange => 'submit()' %>
<% end %>
控制器:
class HomeController < ApplicationController
def index
@resorts = ["A","B", "C", "D", "E"]
end
def new
end
def edit
end
def create
end
def show
@activities = Parse::Query.new("Activity").tap do |a|
a.eq("resort", params[:resort])
end.get
end
end
稍稍困惑。考慮到CRUD,使用form_for對我來說更有意義,也是因爲表單是基於對象的。
我想採取選定的手段,並將其傳遞到我的控制器中的方法,進入數據庫並抓取一堆目的地。然後,我想在我的展示頁面上列出這些目的地,用戶可以點擊它們並將其帶到另一個可以在該目的地進行預訂的頁面。
我上面的代碼不起作用。我有資源:在我的路線文件中。
然而,當我嘗試用格式加載我的網頁,我得到:
No route matches {:action=>"show", :controller=>"home"} missing required keys: [:id]
如何我拉這一關?
我去了我的lynda帳戶,拿出了一個鐵軌基本教程,明天我會用一段時間來刷新我的記憶,但導師不包括使用select_tag。
將不勝感激這裏一些幫助
感謝您的時間
*使用form_for對我更有意義* - 爲什麼你使用'form_tag'而不是'form_for'呢? – zetetic 2014-10-06 23:21:58