Tôi đang cố gắng chuyển ứng dụng của mình từ Rails 3.2.x sang Rails 4.0.4. Tất cả các đá quý đã được thực hiện tương thích và tôi đang trong giai đoạn sửa chữa các thử nghiệm không thành công.Rails 4 Upgrade - ActionController :: UrlGenerationError - Không có tuyến đường phù hợp
Tôi có lỗi thử nghiệm lạ này.
My routes.rb
resources :my_reports, only: [:index] do
collection do
get "/report/:filename", to: :show, prefix: "pri/excl/rep", as: :show
end
end
đặc tả của tôi mà đã được thông qua trong Rails 3.2.x và bây giờ thất bại sau khi cập nhật 4.0.4
describe MyReportsController do
describe "#show" do
def make_request
get :show, prefix: 'some/place', filename: 'foo', format: 'doc'
end
it "makes a simple request" do
make_request
end
end
end
Tôi nhận được lỗi sau
Failure/Error: get :show, prefix: 'some/place', filename: 'foo', format: 'doc'
ActionController::UrlGenerationError:
No route matches {:action=>"show", :controller=>"my_reports",
:filename=>"foo", :format=>"doc", :prefix=>"some/place"}
Tôi bị kẹt vào thời điểm này, gợi ý được hoan nghênh. Tôi đang sử dụng phiên bản rspec và rspec-ray 2.14.1.
Không, tôi đã kiểm tra rồi. Thậm chí bao gồm hiển thị trong các tài nguyên, nhưng điều đó lý tưởng không có tác động như tôi đã sử dụng rõ ràng ': as' – bragboy
Bạn đã thử trực tiếp 'get: show, prefix: ...' mà không có phương thức lồng nhau? – BriceB