Ruby亂數創造
rand(10..50) =>>產生10-50的整數亂數def random
rand = rand(1000..9999)
flash[:notice] = rand
end
Ruby去除空格
.gsub(/\s+/, "") ==>刪除所有的空格.gsub(/[^1234567890]/,"") ==>留下所有的數字+刪除所有空格
Ruby正則表達網站檢查
https://rubular.com/台灣手機正則表達檢測
台灣手機號碼 /^09\d{2}-?\d{3}-?\d{3}$/台灣手機號碼/^09\d{8}$/
要準備的model
devise Use
def User
紀錄使用者的資料
email
password
nickname
phone
active =>
end
def Message
紀錄送出的訊息
phone
IP
success? =>有發送成功嗎?
timestamp
end
寄送OTP密碼簡訊
def send_msg
進入前,檢查有沒有登入
進入前,檢查發送IP有沒有超過限制(24小時內最多三通)
進入時,檢查電話紀錄有沒有超過兩分鐘一通
輸入時,檢查電話紀錄有沒有超過每日限制(24小時內最多三通)
送出號碼
end
收簡訊並確認
def receive(code)
檢查有沒有正確輸入檢查碼
將手機紀錄在"已註冊手機"
將手機紀錄在"已註冊手機"
end
PRIVATE
end
更換手機號碼需要再檢查一次
def update_phone
之前已經確認過得手機號碼,要換成新的手機號碼
接收新的手機號碼
檢查唯一性
end
PRIVATE
紀錄已發送的電話
def save_sended_phoneend
紀錄已發送IP
def save_sended_IP
end
沒有留言:
張貼留言