我有一個非常小的應用程序,我可以在rails中構建。這是一個簡單的重量跟蹤應用程序。我創建了一個User
模型,它有一個註冊頁面。一旦用戶登錄,它們將被重定向到user#show
視圖。這是迄今爲止用戶控制器:可能將表單添加到導軌中的另一個模型視圖中
class UsersController < ApplicationController
before_filter :authenticate_user!
def show
@user = current_user
end
end
我還有其他2款機型一個是Weight
模型,另一個是Goal
模式,我想這有啥當用戶註冊,他們都帶有一個屏幕,詢問他們輸入當前體重和目標體重,然後這些信息將分別存儲在Weight
和Goal
模型中,以及登錄的用戶ID。
到目前爲止,我已經能夠表單添加到用戶show.html.erb
模板:
<%= form_for @user do |f| %>
<%= f.fields_for :weight do |builder| %>
<fieldset>
<%= f.label :value, "Current weight" %><br />
<%= f.text_field :value %><br />
</fieldset>
<% end %>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
哪個正確呈現形式,但是當我然後點擊提交按鈕,它只是進入一個錯誤頁面,指出Unknown action- The action 'update' could not be found for UsersController
。我假設iM做錯了,因爲它應該嘗試併發送到創建操作。
有沒有人可以幫助我回到正確的道路上,我非常喜歡鐵軌上的菜鳥。
噢,我明白了,那麼最好如何將重量和目標值插入到各自的表中? – 2013-02-26 20:41:25
我剛添加在該代碼和接收到的以下錯誤: '{ 「UTF8」=> 「✓」, 「_method」=> 「放」, 「authenticity_token」=> 「ciFbrD782Q + fS9h8gSZxHD2fEBlWoTVFTT2asHhcpPQ =」, 「 user「=> {」weight「=> {」value「=>」1.5「}} 」commit「=>」試圖將體重模型的值內容保存到用戶表中。我該怎麼做才能保存到自己的桌子上。 – 2013-02-26 21:09:56
@Khaled說,你創建一個實例變量@user保存到用戶表。同樣的事情可以做到其他人,體重,目標等。我會做它使用自定義散列,而不是'@ weight.update_attributes({:value1 => params [:用戶] [:value1],:value2 =>參數[:用戶] [:值2]})' – kasperite 2013-02-26 21:36:51