클래스 User와 클래스 Task가 있습니다. 작업에 대한 내 리소스 경로는 User 리소스 내에 중첩되어 있고 belongs_to 사용자 및 users have_many 작업이 있습니다. 내 RSpec에 "요청"에서 중첩 된 경로에 대한 직접적인 자원 경로가 있어야합니까?
resources :users, except: [:new, :edit] do
resources :tasks, except: [:new, :edit]
end
테스트 나는 연결된 사용자와 새 작업을 POST하려고하지만 그것을 발견하지 않는 결국 직접
/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
'레이크 루트'가 출력되는 것은 무엇입니까? – kurenn