0

我正在尝试设置一个新的静态页面和以后的动态页面。

我在里面app/controllers/创建了detailpages_controller.rb. 里面我有:

class DetailPagesController < ApplicationController    
 def show
  render
 end
end

然后,config/routes.rb我有:

Rails.application.routes.draw do
   root 'welcome#index'
   DetailPagesController.action_methods.each do |action|
    get "/#{action}", to: "detailpages##{action}", as: "#{action}_page"
  end
end

app/viewes/pages一个detailpages.html.erb文件只包含一个<h2>Hello World</h2>

当我去时,http://localhost:3000/detailpages.html我得到:

没有路线匹配 [GET] "/detailpages.html"

如果我只是localhost:3000把我的index.html工作做得很好,但我不能,为了我的生活,添加这个新页面,以便我以后可以链接到它。

有人可以告诉我我做错了什么吗?

4

1 回答 1

0

您可以映射到detailpages.htmlwith

get 'detailpages.html' => 'detail_pages#show', as: :detail_page

您还需要编辑您的名称DetailPagesController,它应该是detail_pages_controller.rb。每个单词都用 分隔_,称为蛇形套管。

您还需要一个相应的视图,放置在app/views/detail_pages/show.html.erb

于 2017-02-11T16:21:05.677 回答