2014-06-05 65 views
0

我正在使用rails 3.2.12使用客戶端驗證和客戶端驗證mongoid。我遇到了一些可能會有幫助的問題。客戶端驗證寶石條件驗證

  1. 我有2個字段。如果第一個字段的 值大於0,我想驗證第二個字段的存在。
  2. 如何驗證複選框?
  3. 如何驗證「date_select」下拉列表。

我曾嘗試:

validates_presence_of :source_other_income_amount, :if => :condition_testing? 

和:

def condition_testing? 
    !(:other_income_amount == 0) 
end 

但是,當其他收入不爲0

+0

嗨 - 你有一個自己去嗎?你看看可用的驗證,看看有什麼可能適合?你提出了什麼(即使它不起作用)? –

+0

是的。對於第一次嘗試使用:如果但失敗。並找不到任何複選框和date_select。 – nOmi

+0

如果您向我們展示了您嘗試的代碼(即使它已損壞)......以及您得到的錯誤,那對我們來說真的很有幫助。有時,我們調整代碼比從頭開始編寫新東西更容易。 (當然有時並不是這樣,但無論如何它都會給我們帶來好處) –

回答

0

這一點是確定的領域不驗證:

validates_presence_of :source_other_income_amount, :if => :condition_testing? 

但是這個位有一個錯誤:

def condition_testing? 
    !(:other_income_amount == 0) 
end 

在你處於「condition_testing?你是模特的真實情況,所以你需要使用other_income_amount,不是符號:other_income_amount

嘗試:

def condition_testing? 
    other_income_amount != 0 
end 

注意:這也可能無法正常工作......你需要看到什麼在這一點上你實際上已經在「other_income_amount」中。 它可能已經是一個布爾(真/假),而不是0/1