我是 Ruby on Rails 的新手,我已经完成了博客教程。
我现在正在尝试向控制器添加一个额外的操作,称为“开始”。
def start
end
我添加了一个视图页面“app/views/posts/start.html.erb”,只包含简单的 html。
当我转到 /posts/start 时,出现以下错误。
ActiveRecord::RecordNotFound in PostsController#show
Couldn't find Post with ID=start
我了解错误,正在执行 show 操作,并且 start 不是有效的 ID。为什么不执行启动操作,是否缺少 MVC 架构或配置的某些部分?
下面是我的posts_controller.rb
class PostsController < ApplicationController
# GET /posts/start
def start
end
# GET /posts
# GET /posts.xml
def index
@posts = Post.find(:all)
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @posts }
end
end
# GET /posts/1
# GET /posts/1.xml
def show
@post = Post.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @post }
end
end
end
是的,我已经重新启动了服务器并使用 Mongrel 和 webrick 进行了尝试。