我試圖保存一個模型movie.But的形式,我有兩個單選按鈕,當你點擊他們每個將顯示額外的隱藏領域(我隱藏這些領域最初).User is suppossed只能選擇一個單選按鈕來點擊並填寫額外的給定字段(製作人或導演字段)。此模型中的所有字段爲validated_presence_of
。問題是當您單擊一個單選按鈕並填寫給定的文本字段時,這意味着另一個字段隱藏在另一個單選按鈕,將顯示爲空白,因此形式不會得到提交(因爲validated_presence_of
)。如何做我解決此去?謝謝如何從有條件地跳過驗證字段中的驗證?
<%= form_for @movie ,:url=>{:action =>"create"} do |f|%>
<%= f.error_messages %>
<%=f.text_field :title%>
<%= f.text_field :description%>
<%= f.radio_button :drama "drama" %>
<div style="display:none"><%= f.text_field :director %></div>#this is displayed with javscript when you click radio button
<%= f.radio_button :action "action" %>
<div style="display:none"><%= f.text_field :producer %></div> #this is displayed with javscript when you click radio button
<%= f.submit "post"%>
型號
class Movie < ActiveRecord::Base
validates_presence_of :title
validates_presence_of :description
validates_presence_of :director
validates_presence_of :producer
end
架構
create_table "movies", :force => true do |t|
t.string "title"
t.text "description"
t.boolean "drama",
t.boolean "action"
end
在我的情況下,你如何做至少一個?我不知道如何在這種情況下使用'if' – katie
非常感謝你 – katie
是否可以執行'validates_presence_of:director,:if =>「producer.blank?」 AND「title.blank?」' – katie