Я чувствую, что у меня есть все, что мне нужно, в моем route.rb, моем контроллере и спецификации контроллера, но по какой-то причине я все еще получаю ошибку маршрутизации (ActionController :: RoutingError).Вот мой контроллер:
class HunchController < ActionController::Base
protect_from_forgery
def results
auth_token_key = params[:auth_token_key]
user_id = params[:user_id]
@user = User.create!
@user.auth_token = @user.get_auth_token(auth_token_key, user_id)
@recommended_books = @user.get_recommended_books(@user.auth_token)
end
end
Вот моя спецификация контроллера:
require 'spec_helper'
describe HunchController do
describe "POST 'results'" do
before do
@params = {
:auth_token_key => "my auth token",
:user_id => "my user id"
}
end
it "succeeds" do
post :results, @params
response.should be_success
end
end
end
А вот мои маршруты.rb:
MyApplicationName::Application.routes.draw do
root :to => 'hunch#index'
resources :users
post 'hunch/results' => "hunch#results"
match '/results' => 'hunch#results'
end
РЕДАКТИРОВАТЬ: Вот мойВывод Rake Routes:
root / {:controller=>"pages", :action=>"index"}
hunch_results POST /hunch/results(.:format) {:controller=>"hunch", :action=>"results"}
results /results(.:format) {:controller=>"hunch", :action=>"results"}
users GET /users(.:format) {:action=>"index", :controller=>"users"}
POST /users(.:format) {:action=>"create", :controller=>"users"}
new_user GET /users/new(.:format) {:action=>"new", :controller=>"users"}
edit_user GET /users/:id/edit(.:format) {:action=>"edit", :controller=>"users"}
user GET /users/:id(.:format) {:action=>"show", :controller=>"users"}
PUT /users/:id(.:format) {:action=>"update", :controller=>"users"}
РЕДАКТИРОВАТЬ # 2: я получаю эту ошибку с моими пользователями # Показать тест тоже.Вот фактическая ошибка:
1) UsersController#show succeeds
Failure/Error: get :show
ActionController::RoutingError:
No route matches {:controller=>"users", :action=>"show"}
# ./spec/controllers/users_controller_spec.rb:13:in `block (3 levels) in <top (required)>'