【发布时间】:2015-01-27 03:10:19
【问题描述】:
我有一个类用户和一个类任务。我的任务资源路由嵌套在用户资源中,任务属于_to 用户和用户有_many 任务。
resources :users, except: [:new, :edit] do
resources :tasks, except: [:new, :edit]
end
在我的 rspec“请求”测试中,我尝试向关联用户发布一项新任务,但看起来它最终试图直接命中 /tasks 路由,但它最终没有找到。如果我的路由文件如下所示,则测试通过:
resources :users, except: [:new, :edit] do
resources :tasks, except: [:new, :edit]
end
resources :tasks, except: [:new, :edit]
测试看起来像这样(有一个before(:each) 创建一个@user1):
describe "POST /users/1/tasks" do
it "creates a new task for user1" do
post user_tasks_path(@user1, task: {description: "post new task", due_date: "2/1/15", user_id: @user1.id})
expect(response).to have_http_status(201)
puts response.body
end
end
【问题讨论】:
-
rake routes打印出来的是什么?
标签: ruby-on-rails rspec rails-api