二、使用rails3.0自带的数据检查功能检查输入数据
生活随笔
收集整理的這篇文章主要介紹了
二、使用rails3.0自带的数据检查功能检查输入数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
接著上面的文章、繼續、打開app/models/product.rb文件
1 class Product < ActiveRecord::Base2 end
在這個文件里可以加入些語句進行輸入數據的約束、首先加入
validates :title, :description, :image_url, :presence => true這句是打開各個字段的約束為非空、這么講吧、就是把title、description、image_url、這幾個字段檢查是否為非空、
再來、
validates :price, :numericality => {:greater_than_or_equal_to => 0.01}這句就是要求price的值大于或等于0.01、
再來
validates :title, :uniqueness => true這句是驗證title字段不能重復、
1 validates :image_url, :format => {2 :with => %r{\.(gif|jpg|png)$}i,
3 :message => 'must be a URL for GIF, JPG or PNG image.'
4 }
最后這個是約束image_url的、通過一段正則表達式來處理、要求格式必須為gif/jpg/png、判斷準則便是最后一個小數點必須是這些擴展名、
OK、大功告成、所以完整的代碼應該是這樣的
class Product < ActiveRecord::Basevalidates :title, :description, :image_url, :presence => truevalidates :price, :numericality => {:greater_than_or_equal_to => 0.01}validates :title, :uniqueness => truevalidates :image_url, :format => {:with => %r{\.(gif|jpg|png)$}i,:message => 'must be a URL for GIF, JPG or PNG image.'} end邇再試試打開http://localhost:3000/products頁面直接按提交?哈哈
總結
以上是生活随笔為你收集整理的二、使用rails3.0自带的数据检查功能检查输入数据的全部內容,希望文章能夠幫你解決所遇到的問題。