RAILS有條件的校驗

2021-08-31 04:31:46 字數 500 閱讀 1437

rails中所有的驗證宣告都可以接受 :if 選項,可以指定一段在校驗之前執行的**

比如 只有在郵箱位址不為空的時候才驗證郵箱位址的格式

使用proc物件,呼叫時,傳入當前的模型物件作為引數,**返回false時,不做校驗

validates_format_of :email,

:with=>/^([a-za-z0-9_]+)([\.\-\+][a-za-z0-9_]+)*(\@[a-za-z0-9_]+)([\.\-][a-za-z0-9_]+)*(\.[a-za-z0-9_]+)$/,

:if=>proc.new

一定範圍內的「不可重複」校驗

比如乙個人的**東西,不能重名

validates_uniqueness_of :name,:scope=>"creator_id"

[url]

有條件的表聯接

表1和表2在聯接時,希望顯示表1的全部記錄以及表2的部分記錄。嘗試使用下面的 sql 語句 select table1.table2as.from table1 left outer join select from table2 where rightname 計畫編制員 as table2as ...

myslq有條件插入資料

要求是這樣的 我有乙個表存著基礎資料有乙個欄位是 管理號 我的目的是先查詢最新的管理號按照規則生成新管理號 然後insert到表裡新資料 由於查詢並不鎖表 所以在查詢到insert這步中間會有可能兩線程查詢到相同的管理號?參考了關鍵是如下的mysql語句,插入多條記錄 insert into cli...

Python 有條件迴圈遍歷

有個場景需要通過傳入的列表遍歷乙個列表裡每個字典並判斷特定鍵值是否在允許的列表裡.通過迭代和計數來實現節點判斷和遍歷.以下是實現方法 info def get allow info in,allow in result to return success status,allow count fal...