无法为PostsController找到“创建”操作

时间:2013-08-30 17:36:21

标签: ruby-on-rails

我正在为Rails做教程,启动Web服务器。

我在5.8列表中,我收到此错误:

  

未知行动

     

无法找到PostsController

的动作'create'

这些是文件:

postcontroller.rb:

class PostsController < ApplicationController
  def new
  end

  def create
    @post = Post.new(params[:post].permit(:title, :text))

    @post.save
    redirect_to @post
  end

  def show
    @post = Post.find(params[:id])
  end

  def index
    @posts = Post.all
  end 

  private

  def post_params
    params.require(:post).permit(:title, :text)
  end
end

导致错误的原因是什么?

2 个答案:

答案 0 :(得分:1)

检查您的/config/routes.rb确保您拥有资源:帖子

修改新动作

def new
 @post = Post.new
end

对于index action,当您调用它时,您将收到错误消息 将其设为@post NOT @posts

答案 1 :(得分:1)

您将文件名列为postcontroller.rb,但Rails会将其定义为:

app/controllers/posts_controller.rb