一个简单的解决方案通常是一个简单的错误,我似乎被卡住了:
帖子#控制器:
class PostsController < ApplicationController
def index
@posts = Post.all
end
def show
@post = Post.find params[:id]
end
def new
@post = Post.new
end
def create
@post = Post.create post_params
if @post.save
redirect_to posts_path, :notice => "Your post was saved!"
else
render 'new'
end
end
private
def post_params
params.require(:post).permit(:title, :content)
end
def edit
@post = Post.find params[:id]
end
def update
@post = Post.find params[:id]
if @post.update_attributes params[:post]
redirect_to posts_path
else
render 'edit'
end
end
def destroy
@post = Post.find params[:id]
@post.destroy
redirect_to posts_path, :notice => "Your post has been deleted"
end
end
路线.rb:
Blog::Application.routes.draw do
resources :posts
end
耙路线:
Prefix Verb URI Pattern Controller#Action
posts GET /posts(.:format) posts#index
POST /posts(.:format) posts#create
new_post GET /posts/new(.:format) posts#new
edit_post GET /posts/:id/edit(.:format) posts#edit
post GET /posts/:id(.:format) posts#show
PATCH /posts/:id(.:format) posts#update
PUT /posts/:id(.:format) posts#update
DELETE /posts/:id(.:format) posts#destroy
帖子视图,index.html.slim:
h1 Blog
- @posts.each do |post|
h2 = link_to post.title, post
p = post.content
p = link_to 'Edit', edit_post_path(post)
p = link_to 'Delete', post, :confirm => "Are you sure?", method: :delete
br
p = link_to 'Add a new post', new_post_path
然而,我在浏览器中继续出现错误,显示:
未知操作,找不到 PostsController 的操作“销毁”
自从我更新到 Rails 4 后,我似乎遇到了一些这些基本问题,可能是一个小小的疏忽,有人有什么想法吗?