我的路线文件中有以下内容:
resources :exercises, shallow: true do
resources :questions do
resources :test_cases do
member do
post :run, to: 'test_cases#run'
end
end
end
end
get 'test_cases/test', to: 'test_cases#test'
我的问题在于资源之外的test
路由。检查可用路线我有我想要的东西:
test_cases_test GET /test_cases/test(.:format) test_cases#test
但是,如果我从视图中调用test_cases_test_url
,我会将其重定向到test_cases#show
,而不是test_cases#test
它应该如何。 This question在不同的情况下也存在同样的问题。我不想遵循接受的答案,因为如果我将get 'test', to: 'test_cases#test'
放在我的resources :test_cases
和member
块之内,我会在我的路线中找到question_id,并在{{1}内阻止test_case_id。我不需要这些ID。
我可以选择让我想要的路线(member
)正常工作吗?
答案 0 :(得分:1)
我认为你在test_cases#show方法上匹配,因为它与func grabSong() {
let SongQuery = PFQuery(className: "Songs")
SongQuery.getObjectInBackground(withId:iDArray[SelectedSongNumber!] ,block: { (object : PFObject?, error : Error?) -> Void in
if let AudioFileURLTemp : PFFile = object?.value(forKey: "SongFile") as? PFFile {
print(AudioFileURLTemp)
audioP = AVPlayer(url: NSURL(string: AudioFileURLTemp.url!) as! URL)
audioP.play()
}
})
}
网址具有相同的模式,而且之前就是这样。只需将audioP = AVPlayer(url: NSURL(string: AudioFileURLTemp.url!) as! URL)
获取路线移至路线文件顶部
test_cases/test
另一种方式,我建议
test_cases/test