0

我一直在关注 wicked gem 的分步示例https://github.com/schneems/wicked/wiki/Building-Partial-Objects-Step-by-Step但我正在努力使其工作

路线.rb

post '/trips/building/build(.:format)', :to => "trips/build#create"
resources :trips do
resources :build, controller: 'trips/build'
end

trips_controller.rb

class TripsController < ApplicationController
include Wicked::Wizard
before_action :set_trip, only: [:show, :update]
steps :basic, :details

def show
render_wizard
end

def create
@trip = Trip.create
redirect_to wizard_path(steps.first, :trip_id => @trip.id
end

def update
@trip.update_attributes(trip_params)
render_wizard @trip
end

private
def set_trip
  @trip = Trip.find(params[:trip_id])

end
def trip_params
....
end

end

index.html.erb

<%= link_to 'Create New Trip', '/trips/building/build', :method => :post, :class=>'btn btn-danger'%>

控制台中的错误:

Started POST "/trips/building/build" for 127.0.0.1 at 2014-04-16 22:50:20 -0700

ActionController::RoutingError - uninitialized constant Trips

这让我发疯......有什么想法吗?

4

1 回答 1

0

您的控制器命名不正确 - 您的路线指向 ,Trips::BuildController但您的控制器被定义为TripsController.

您共享的链接定义了一个Products::BuildController,这就是它在那里工作的原因。

于 2014-04-17T06:11:49.110 回答