[問題] 關於scaffold的問題
環境:
e.g. Ruby 1.8.6 Rails 2.0.2
狀況:
我用ruby script/generate scaffold user name:string 創了一個紀錄名字的系統
對於它的MVC運作方式有點想不通 想請教大家
打開server之後 在首頁點選New user 填入姓名之後點選Create會顯示這樣的畫面
User was successfully created.
Name: Kevin
Edit | Back
回頭看它的controller 發現有這樣一段
def create
@user = User.new(params[:user])
respond_to do |format|
if @user.save
flash[:notice] = 'User was successfully created.'
format.html { redirect_to(@user) }
format.xml { render :xml => @user, :status => :created, :location =>
@user }
else
format.html { render :action => "new" }
format.xml { render :xml => @user.errors, :status =>
:unprocessable_entity }
end
end
end
根據畫面顯示的'User was successfully created.'
我想就是跟create這個action有關吧
接著回頭看的view的部分(new.html.erb)
<h1>New user</h1>
<%= error_messages_for :user %>
<% form_for(@user) do |f| %>
<p>
<b>Name</b><br />
<%= f.text_field :name %>
</p>
<p>
<%= f.submit "Create" %>
</p>
<% end %>
<%= link_to 'Back', users_path %>
內容只是對@user填入資料 接著submit出去
而controller內關於new的部分是
def new
@user = User.new
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @user }
end
end
請問是哪一部分決定了 接收到view所submit出來資料之後的動作?
思考了很久都不知道為什麼會進入create這個action
在controller或是view裡面都沒出現"create"這個字不是嗎?(那個按鈕名稱除外)
想請教各位大大 謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.7.59
→
10/23 15:32, , 1F
10/23 15:32, 1F
→
10/23 15:35, , 2F
10/23 15:35, 2F
→
10/23 15:52, , 3F
10/23 15:52, 3F
→
10/23 15:52, , 4F
10/23 15:52, 4F
推
10/23 21:46, , 5F
10/23 21:46, 5F
推
10/23 23:12, , 6F
10/23 23:12, 6F
推
10/23 23:16, , 7F
10/23 23:16, 7F
→
10/23 23:31, , 8F
10/23 23:31, 8F
→
10/23 23:31, , 9F
10/23 23:31, 9F
→
10/28 01:32, , 10F
10/28 01:32, 10F
→
10/28 20:25, , 11F
10/28 20:25, 11F
Ruby 近期熱門文章
PTT數位生活區 即時熱門文章