在我的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