Ruby on rails 控制器未将值从from传递到create方法

Ruby on rails 控制器未将值从from传递到create方法,ruby-on-rails,Ruby On Rails,我的Create控制器将嵌套资源的子级的值作为null传递,而不是将我刚刚输入的值传递到表单中 这是我的密码 路线: resources :trips do resources :pilgrims end 型号: resources :trips do resources :pilgrims end 行程: 朝圣者创建控制器发生了什么情况?您正试图通过调用 @pilgrim = @trip.pilgrims.build(params[:pilgrim]) 在朝圣者控制室。但是参数:{“

我的Create控制器将嵌套资源的子级的值作为null传递,而不是将我刚刚输入的值传递到表单中

这是我的密码

路线:

resources :trips do
 resources :pilgrims
end
型号:

resources :trips do
 resources :pilgrims
end
行程:


朝圣者创建控制器发生了什么情况?

您正试图通过调用

@pilgrim = @trip.pilgrims.build(params[:pilgrim])

在朝圣者控制室。但是
参数:{“utf8”=>“✓", "真实性令牌“=>”kOE06m3DNax43BOLYZ6t1lS7/T4wOWb2xM8m/mlQzvA=“,“提交”=>“创建朝圣者”,“旅行id”=>“3”}
不包含任何朝圣者参数。因此,问题在于用于创建新pilgrim的表单

您似乎已经发布了两次
Trip
的代码,而没有发布
pilgrim
@Hillary的HTML输出是什么样子的?
 def new
  @trip = Trip.find(params[:trip_id])
  @pilgrim = Pilgrim.new
 end

def create
  @trip = Trip.find(params[:trip_id])
  @pilgrim = @trip.pilgrims.build(params[:pilgrim])


  if @pilgrim.save
    flash[:notice] = "The <b>#{ @pilgrim.name }</b> has been created successfully."
    redirect_to(trip_pilgrims_path, :notice => "The <b>#{ @pilgrim.name }</b> ship has been saved successfully.")
  else
    render(:new, :error => @pilgrim.errors)
  end
 end
Started POST "/trips/3/pilgrims" for 127.0.0.1 at 2013-01-19 22:12:06 -0800
Processing by PilgrimsController#create as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"kOE06m3DNax43BOLYZ6t1lS7/T4wOWb2xM8m/mlQzvA=", "commit"=>"Create Pilgrim", "trip_id"=>"3"}
Trip Load (0.3ms)  SELECT `trips`.* FROM `trips` WHERE `trips`.`id` = 3 LIMIT 1
(0.2ms)  BEGIN
(0.2ms)  ROLLBACK
Pilgrim Load (0.4ms)  SELECT `pilgrims`.* FROM `pilgrims` WHERE `pilgrims`.`trip_id` = 3
Rendered pilgrims/_form.html.erb (36.4ms)
Rendered pilgrims/new.html.erb within layouts/application (37.2ms)
User Load (0.2ms)  SELECT `users`.* FROM `users` WHERE `users`.`id` = 2 LIMIT 1
Trip Load (0.3ms)  SELECT `trips`.* FROM `trips` 
Completed 200 OK in 244ms (Views: 102.5ms | ActiveRecord: 11.2ms)
@pilgrim = @trip.pilgrims.build(params[:pilgrim])