【发布时间】:2011-12-02 14:32:20
【问题描述】:
我在 routes.rb 中为 /type-in-something-here 使用了以下正则表达式
# A-Z, a-z, 0-9, _ in the middle but never starting or ending in a _
# At least 5, no more than 500 characters
在路线中,这很有效:
match ':uuid' => 'room#show', :constraints => { :uuid => /[A-Za-z\d]([-\w]{,498}[A-Za-z\d])?/ }
我也想将此作为验证,因此不会创建无效记录。所以我在 room.rb 中添加了以下内容:
validates_format_of :uuid, :with => /[A-Za-z\d]([-\w]{,498}[A-Za-z\d])?/i, :message => "Invalid! Alphanumerics only."
但是这个 validates_format_of 不起作用,它允许保存记录而不是添加错误。
有什么想法吗?
谢谢
【问题讨论】:
标签: ruby-on-rails ruby regex ruby-on-rails-3