2016-09-24 45 views
0

我有模型調用學生在學生表中我存儲student_name,電話號碼也存儲其他模型id類我需要檢查創建一個學生記錄所有這3個值是獨一無二的創建新的記錄。驗證在軌2

請幫我在rails 2中進行驗證。我也嘗試了下面的驗證,它只驗證了兩個值batch_id和student_name。隨着這個我還需要驗證電話號碼

class Student < ActiveRecord::Base> 
    validates_uniqueness_of :first_name, :scope => [:phone1, :batch_id] 
end 
+0

對不起究竟是什麼問題?請修改你的帖子,以便清楚你的問題。 –

+0

我需要如果相同的數據匹配在同一表中的3列同一表中的ID應該給出錯誤 –

+1

感謝您問我對我的問題的解決方案 –

回答

0

在我用下面的代碼模型來驗證

module StudentModel                     validate :is_valid_true                         private 
def is_valid_true 
    @batch = Batch.find(self.batch_id) 
    @batch.students.each do |s| 
    if ((s.full_name==self.full_name)&&(s.phone2==self.phone2)) 
     errors.add_to_base("Student with same Name and Mobile number is already Present in the Batch") 
     break 
    end 
    end 
end                               end 
end 
+0

當我用這個來驗證我在編輯學生表單時得到了另一個錯誤,它給出了同樣的錯誤同樣的學生,如果我們只有一個數據具有相同的條目,任何人都可以爲此提供解決方案。 –