我正在使用Rails構建一個應用程序,如下所示。我想創建一個帶多個停靠點的加載。我有一個類加載「has_many:停止」。一旦創建了加載結構,我保存加載並使用戶進入新的停止視圖。我如何獲取在最後一次點擊中創建的負載ID並將其傳遞到站點?這是我在新的一站中所擁有的。如何將保存在一個視圖中的對象ID傳遞給另一個視圖?
<%= label_tag :load_id %><br />
<%= number_field_tag :load_id %>
我正在使用Rails構建一個應用程序,如下所示。我想創建一個帶多個停靠點的加載。我有一個類加載「has_many:停止」。一旦創建了加載結構,我保存加載並使用戶進入新的停止視圖。我如何獲取在最後一次點擊中創建的負載ID並將其傳遞到站點?這是我在新的一站中所擁有的。如何將保存在一個視圖中的對象ID傳遞給另一個視圖?
<%= label_tag :load_id %><br />
<%= number_field_tag :load_id %>
創建一個嵌套的資源,所以load_id將在URL:/loads/:load_id/stops/new
。
載荷模型:
class Load < ActiveRecord::Base
has_many :stops
end
路線:
resources :loads do
resources :stops
end
控制器停止:
class StopsController < ApplicationController
# get /loads/:load_id/stops/new
def new
load = Load.find(params[:load_id])
@stop = load.stops.build
end
# post /loads/:load_id/stops
def create
load = Load.find(params[:load_id])
@stop = load.stops.create(params[:stop])
if @stop.save
format.html { redirect_to([@stop.post, @stop], :notice => 'Stop was successfully created.') }
else
format.html { render :action => "new" }
end
end
end
從這裏提取:
http://blog.8thcolor.com/2011/08/nested-resources-with-independent-views-in-ruby-on-rails/
DEF創建 - - 如果@ load.save P = Load.find(PARAMS [ 「ID」]) redirect_to的 '/負載/ P /停止/新' 別的 渲染 '新' 端 端 – user2297820
是在我的負載控制器上面的正確嗎? – user2297820
是的,但代碼不好。 _def創建; @load = Load.new(params [:load]);如果@ load.save; redirect_to new_load_post(@load);其他;渲染'新'; end_ – michelpm
可能在看這個railscasts插曲會給你如何解決你的問題的想法:http://railscasts.com/episodes/217-multistep-forms – brg
你有任何控制器代碼? – PinnyM
概括起來,這是我正在嘗試做的事情。我創建模型A並提交按鈕將我重定向到模型B.我想要保存的模型A數據在模型B中可用。 – user2297820