在我的Rails應用程序中,我有bank_details表中的列 - account_number,ifsc_code,bank_name和branch_code(僅限於印度)。但我不知道如何在保存到數據庫之前驗證這些列。請在此幫助我。如何驗證銀行詳細信息,如account_number,ifsc_code,bank_name和branch_code等...在Rails中
我會感謝您的幫助。
在此先感謝。
在我的Rails應用程序中,我有bank_details表中的列 - account_number,ifsc_code,bank_name和branch_code(僅限於印度)。但我不知道如何在保存到數據庫之前驗證這些列。請在此幫助我。如何驗證銀行詳細信息,如account_number,ifsc_code,bank_name和branch_code等...在Rails中
我會感謝您的幫助。
在此先感謝。
在你的模型,你需要添加一個validates: your_column
。
例如,如果你想確保你保存到數據庫之前賬號存在,您需要添加validates: account_number, presence: true
有兩個預建的助手,這樣你就可以存在,名字驗證,等等,但您也可以使用自定義方法來驗證這些。
退房RailsGuides的所有細節
有,你可以適用於你的列那麼多的驗證,這裏是可以驗證的清單。你可以選擇你的要求。
驗證的數據應該是目前
validates :account_number, :ifsc_code, :branch_code, :bank_name, presence: true
數據應該是正數只記錄
validates :account_number, :branch_code, :numericality => { :greater_than_or_equal_to => 0 }
集長度
validates :ifsc_code, length: { is: 11 }
驗證該屬性的值是之前唯一正確的對象被保存
validates :account_number, uniqueness: true
在你的模型,你可以有這樣的事情:
validates: branch_code
這是一個標準的驗證,確保其目前
,也可以使用做更多的驗證正則表達式
validates :bank_name, format: { with: /\A[a-zA-Z]+\z/,
message: "only allows letters" }
以下是驗證的一些例子:
validates :bank_name, length: { minimum: 2 }
validates :bank_name, length: { maximum: 500 }
validates :bank_name, length: { in: 6..20 }
validates :bank_name, length: { is: 6 }
或者使用一些技術進步,像這樣:
validates :bank_name, presence: true, if: "branch_code.nil?"
那你試試這麼遠嗎? – jithya