未初始化的常量PostsController

时间:2018-03-15 15:20:13

标签: ruby-on-rails

我收到的错误是我的PostsController没有初始化。

这是我的routes.rb文件:

Rails.application.routes.draw do

  root to: 'posts#index'

  scope module: 'blog' do
    get 'about' => 'pages#about', as: :about
    get 'contact' => 'pages#contact', as: :contact
    resources :posts 
  end 
end

我的帖子控制器的文件名是:posts_controller.rb

路径是app / controller / blog / posts_controller.rb

这里是posts_controller.rb文件的摘录:

module Blog
  class PostsController < ApplicationController
    before_action :set_post, only: [:show, :edit, :update, :destroy]

2 个答案:

答案 0 :(得分:0)

您的PostsController在Blog模块中定义,因此路径应为

root to: "blog/posts#index"

答案 1 :(得分:0)

你没有PostsController,你有一个名称空间Blog::PostsController

所以,

`root to 'posts#index'` 

正在尝试路由到不存在的PostsController,因此您会收到(准确)错误。

尝试

root to: 'blog/posts#index'