-2
私は、Ruby on Railsのを学ぶために始めています。本当に問題を理解していることの1つは、データが.html.erbファイルからコントローラファイルに転送される方法です。データ(Ruby on Railsは)
は、以下のnew.html.erb
<%= form_for :post, url: posts_path do |f| %>
<p>
<%=f.label :title %>
<%=f.text_area :title %>
</p>
<p>
<%=f.label :body %>
<%=f.text_area :body %>
</p>
<p>
<%=f.submit %>
</p>
<% end %>
を検討して、今、私のコントローラファイル、posts_controller.rb
class PostsController < ApplicationController
def index
@post=Post.all
end
def new
end
def create
@post=Post.new(post_param) #
@post.save
redirect_to @post
end
def show
@post=Post.find(params[:id])
end
private
def post_param
params.require(:post).permit(:title, :body)
end
end
オーケー、私は理解していない部分があります。
- どのようにcreateメソッドが 'post'の値を取得しますか?
- あなたは
<%= form_for :post, url: posts_path do |f| %>
が実際に何をするか説明できますか?
あなたが言う、あなたがこの方法自体に '@のPOST'について話している「どのように作成する方法は、『ポスト』の値を取得しませんか」?あるいは.erbファイルの ':post'について話していますか? – eiko