1

我对 ruby​​ on rails 有一个疑问……我的路线文件有问题。我工作了 1 周。但我没有得到合适的结果。我的问题是。我正在开发一个名为 canvas 的项目,它是一个在线教程。在课程主页的那个项目中,它有一个名为 pages 的侧面菜单。点击它时,它会转到 url。画布版本是 rails 2

http://localhost:3000/courses/1/wiki/front-page

它的页面路由文件是

 concern :wikis do
get 'pages' => 'wiki_pages#pages_index'
get 'pages/:wiki_page_id' => 'wiki_pages#show_page', :wiki_page_id => /[^\/]+/, :as => :named_page
get 'pages/:wiki_page_id/edit' => 'wiki_pages#edit_page', :wiki_page_id => /[^\/]+/, :as => :edit_named_page

resources :wiki_pages, :path => :wiki do
  match 'revisions/latest' => 'wiki_page_revisions#latest_version_number', :as => :latest_version_number
  resources :wiki_page_revisions, :path => :revisions
end
match 'wiki/:id' => 'wiki_pages#show', :as => :named_wiki_page, :id => /[^\/]+/
end

我的任务是在没有控制器和视图的情况下向名为 faq 和 career 的侧菜单添加另外两个链接。我将常见问题解答和职业路线的路线如下:

 concern :faq do
get 'faq' => 'wiki_pages#pages_index'
get 'faq/:wiki_page_id' => 'wiki_pages#show_page', :wiki_page_id => /[^\/]+/, :as => :named_page
get 'faq/:wiki_page_id/edit' => 'wiki_pages#edit_page', :wiki_page_id => /[^\/]+/, :as => :edit_named_page

resources :wiki_pages, :path => :wiki do
  match 'revisions/latest' => 'wiki_page_revisions#latest_version_number', :as => :latest_version_number
  resources :wiki_page_revisions, :path => :revisions
end
match 'faq/:id' => 'wiki_pages#show', :as => :named_faq_page, :id => /[^\/]+/
end 

职业路线是

 concern :career do
  get 'career' => 'wiki_pages#pages_index'
  get 'career/:wiki_page_id' => 'wiki_pages#show_page', :wiki_page_id => /[^\/]+/, :as => :named_page
  get 'career/:wiki_page_id/edit' => 'wiki_pages#edit_page', :wiki_page_id => /[^\/]+/, :as => :edit_named_page

  resources :wiki_pages, :path => :wiki do
    match 'revisions/latest' => 'wiki_page_revisions#latest_version_number', :as => :latest_version_number
    resources :wiki_page_revisions, :path => :revisions
  end

  match 'career/:id' => 'wiki_pages#show', :as => :named_wiki_page, :id => /[^\/]+/

结尾

使用上面的 wiki_controller 我想在单击常见问题解答时更改下面的 url,url 必须是这样的:

http://localhost:3000/courses/1/faq/front-page

但操作是 wikipages_index 和显示。

当我点击职业链接时,它一定是。

http://localhost:3000/courses/1/career/front-page

像这样,所有索引和显示、编辑和更新的 URL 都必须出现。请向我道歉,这不是标准的英语。任何人都可以帮助我。提前感谢萨兰

4

0 回答 0