Bog*_*opa 1 ruby-on-rails ruby-on-rails-4
假设我有一个"城市"或"国家/地区"输入字段.如何验证此字段仅包含字母?
目前我用这样的空格替换任何最终的数字字符:
def strip_numeric_characters
  self.city = self.city.gsub(/[0-9]/, "")
  self.country = self.country.gsub(/[0-9]/, "")
end
Run Code Online (Sandbox Code Playgroud)
但这不是正确的方法,因为如果有人只输入数字,我最终将使用空字符串.
您可以使用以下方式验证属性格式validates_format_of:
validates_format_of :city, :country, :with => /^[a-z]+$/i
Run Code Online (Sandbox Code Playgroud)
/^[a-z]+$/i只允许使用字母的城市和国家/地区名称.以下是正则表达式的详细信息.
^     => Start of line
[a-z] => Any single character in the range a-z
+     => One or more characters of the range
$     => End of line
i     => To make case insensitive
Run Code Online (Sandbox Code Playgroud)
        |   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           3091 次  |  
        
|   最近记录:  |