validates_format_of :first_name, :with => /\A\w+\Z/
如果名字中有非英文字符,例如Mölläinen
,则验证不会通过。更改Rails区域设置没有帮助。那么你如何进行文化/语言环境敏感验证呢?
如果区域设置为EN
,则\w
应映射到[a-zA-Z0-9_]
,但如果是FI
,则应映射到[a-zA-Z0-9_äöåÄÖÅ]
,依此类推
答案 0 :(得分:1)
试试/\A[[:alpha:]]+\Z/
。这应该是语言环境,至少在Ruby 1.9中。
但你可能也想允许其他角色。例如,Anna-Lena
是德国的通用名称。