快速Rails的問題,我會愛上你們的幫助。一直在尋找答案,所有的東西似乎都在我認爲是解決方案的更復雜的一面。我有兩個頁面使用模型(用戶)和每個頁面上的表單,當保存時更新不同的屬性。不同頁面上的條件驗證 - Rails
一個更新自己的密碼信息(驗證密碼的存在)
一個更新其測驗的反應(驗證爲最大值300個字符)
我該怎麼辦條件驗證,因此當我提交表單時,驗證出現在各自的頁面上?我需要兩個單獨的操作嗎?如何將這些操作鏈接到表單提交?
這裏是通用的更新動作和形式:
用戶控制器
def update
@user = User.find(params[:id])
if @user.update_attributes(params[:user])
flash[:success] = "All is updated"
sign_in @user
redirect_to @user
else
render 'edit'
end
end
表
<p><h3>Linked-In Optimization</h3></p>
<%= form_for(@user) do |form| %>
<p><%= form.label :linkedin, 'Please copy and paste your Linked-In profile here (575 chars max.)' %></p>
<p><%= form.text_area :linkedin %></p>
<%= form.submit 'Save' %>
<img class="linkedin" src="/linkedin.png">
<% end %>
你的問題很不清楚。你可以粘貼你的所有代碼「查看頁面」和控制器代碼。 –
你說得對,我應該更清楚。無論如何,感謝下面的幫助。這是我做的:在視圖中:<%= form_for(@user,:url => update_linkedin_user_path(@user))do | f | %>和路線中,我在「resources:users」下面添加了這個 - 「put'update_linkedin',:on =>:member」。 (也在控制器中創建了該動作。) – D060703