Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby Rails路由问题-URL有效,但链接到URL的按钮无效';T_Ruby_Ruby On Rails 4_Hyperlink_Rails Routing - Fatal编程技术网

Ruby Rails路由问题-URL有效,但链接到URL的按钮无效';T

Ruby Rails路由问题-URL有效,但链接到URL的按钮无效';T,ruby,ruby-on-rails-4,hyperlink,rails-routing,Ruby,Ruby On Rails 4,Hyperlink,Rails Routing,我正在写一个非常不雅观的程序来生成健身计划,并且在路线上有一个问题。我想在我的索引页上的按钮链接到某些身体部位和一个计划生成器,当我直接导航到它们时,这些页面本身正在工作。但是,“我的索引”视图上的按钮不起作用,引发了一个路由错误:“没有与[POST]”/exerces/index匹配的路由” 例如,将“/exercises/legs”或“/exercises/generator”的URL放到我的浏览器中会按原样加载页面,但(以及重定向到exercises\u legs\u路径和我想到的其他每个

我正在写一个非常不雅观的程序来生成健身计划,并且在路线上有一个问题。我想在我的索引页上的按钮链接到某些身体部位和一个计划生成器,当我直接导航到它们时,这些页面本身正在工作。但是,“我的索引”视图上的按钮不起作用,引发了一个路由错误:“没有与[POST]”/exerces/index匹配的路由”

例如,将“/exercises/legs”或“/exercises/generator”的URL放到我的浏览器中会按原样加载页面,但(以及重定向到exercises\u legs\u路径和我想到的其他每个选项)会导致错误

当然,这是一个非常简单的东西,我错过了(非常新的),任何建议都将是伟大的

数据库当前包含以下列:id“:move”(即向上按)和“:bodypart”(即腿部)

以下是我的路线:

Helper                      HTTP Verb   Path                            Controller#Action
                            GET        /exercises/:bodypart(.:format)   exercises#bodypart
exercises_generator_path    GET        /exercises/generator(.:format)   exercises#generator
exercises_index_path        GET        /exercises/index(.:format)       exercises#index
root_path                   GET        /                                exercises#index
exercises_path              GET        /exercises(.:format)             exercises#index
                            POST       /exercises(.:format)             exercises#create
new_exercise_path           GET        /exercises/new(.:format)         exercises#new
edit_exercise_path          GET        /exercises/:id/edit(.:format)    exercises#edit
exercise_path               GET        /exercises/:id(.:format)         exercises#show
                            PATCH      /exercises/:id(.:format)         exercises#update
                            PUT        /exercises/:id(.:format)         exercises#update
                            DELETE     /exercises/:id(.:format)         exercises#destroy
和my routes.rb文件:

Rails.application.routes.draw do

  get '/exercises/:bodypart', to: 'exercises#bodypart'
  get '/exercises/generator', to: 'exercises#generator' 
  get 'exercises/index'

  root :to => 'exercises#index'
  resources :exercises

end
提前谢谢,如果我还有什么可以帮上忙的,请告诉我

Rails.application.routes.draw do

  get '/exercises/:bodypart', to: 'exercises#bodypart', as: 'exercises_bodypart'
  get '/exercises/generator', to: 'exercises#generator' 
  get 'exercises/index'

  root :to => 'exercises#index'
  resources :exercises

end
而不是

Rails.application.routes.draw do

  get '/exercises/:bodypart', to: 'exercises#bodypart'
  get '/exercises/generator', to: 'exercises#generator' 
  get 'exercises/index'

  root :to => 'exercises#index'
  resources :exercises

end
用法:

exercises_bodypart_path('legs')

谢谢@Ahmet KAPIKIRAN。完成了,但奇怪的是,对于我测试过的链接,它给出了三个不同的错误。我对身体的三个部位进行了测试,分别是“完整”、“肩部”和“腿部”,并分别得到以下错误:完整的“练习/完整路线错误无路线匹配[POST]”/EXACTIONS/full”“(正如我最初为所有部位所做的那样),对于肩部“练习/索引”,路线错误无路线匹配[POST]“/EXACTIONS/index”“,对于腿部:“/exercises,ExercisesController中的NoMethodError#为nil:NilClass创建未定义的方法'permit'”…有什么想法吗?