在Rails中,在Haml中使用RESTful控制器,可以通过以下步骤实现:
app/controllers/posts_controller.rb
文件中: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.new(post_params)
if @post.save
redirect_to @post
else
render 'new'
end
end
private
def post_params
params.require(:post).permit(:title, :body)
end
end
app/views/posts/index.html.haml
文件中:%h1 All Posts
= link_to 'New Post', new_post_path
- @posts.each do |post|
%h2= link_to post.title, post_path(post)
%p= post.body
在app/views/posts/new.html.haml
文件中:
%h1 New Post
= form_with model: @post, local: true do |form|
= form.label :title
= form.text_field :title
= form.label :body
= form.text_area :body
= form.submit 'Create'
在app/views/posts/show.html.haml
文件中:
%h1= @post.title
%p= @post.body
= link_to 'Edit', edit_post_path(@post)
= link_to 'Back', posts_path
这样,在Haml中就可以使用RESTful控制器来实现CRUD操作。
领取专属 10元无门槛券
手把手带您无忧上云