我创建了一个新页面,由于某些原因我无法找到它。
我已经使用了rails generate controller dashboard index
哪个工作正常。然后我进入了路径文件并添加了这个
namespace :dashboard do
get 'dashboard' => 'dashboard#index'
end
我的文件树是这样的 观点 - >仪表板 - > index.html.erb
我的助手就是这个
module DashboardHelper
end
我的控制器刚刚进入def index end
任何想法我做错了什么?
如果我去/仪表板我得到这个错误
No route matches [GET] "/dashboard"
干杯
答案 0 :(得分:3)
如果在routes.rb中使用命名空间选项,则应将控制器类包装在命名空间中,也应将其放在自己的文件夹中。
为了更快地删除当前的控制器:
rails destroy controller dashboard
并生成新的:
rails generate controller dashboard/dashboard index
为您的控制器生成Rails,插入正确的路由并添加视图。
$> rails generate controller dashboard/dashboard index
#> create app/controllers/dashboard/dashboard_controller.rb
#> route namespace :dashboard do
#> get 'dashboard/index'
#> end
#> invoke erb
#> create app/views/dashboard/dashboard
#> create app/views/dashboard/dashboard/index.html.erb
答案 1 :(得分:0)
您的dashboard controller
应该是
class Dashboard::DashboardController < ApplicationController
def index
end
end
您的view folder structure
应该是
views -> dashboard -> dashboard -> index.html.erb