假设我有这条路线:
get 'post/:title' => 'post#show' , :as => 'show_post'
任何人都可以创建帖子,并选择自己的标题。我不希望标题包含像 '/'、'['、']' 这样的字符,因为它可能导致使用 helper 方法生成错误的 url show_post_path('blah')
。我敢肯定,除了我提到的那些角色之外,我还应该注意其他的事情。
我正在寻找一种在 post 模型中对此进行验证的方法。
/ 谢谢
假设我有这条路线:
get 'post/:title' => 'post#show' , :as => 'show_post'
任何人都可以创建帖子,并选择自己的标题。我不希望标题包含像 '/'、'['、']' 这样的字符,因为它可能导致使用 helper 方法生成错误的 url show_post_path('blah')
。我敢肯定,除了我提到的那些角色之外,我还应该注意其他的事情。
我正在寻找一种在 post 模型中对此进行验证的方法。
/ 谢谢
您可以对字符串 Ex-使用 Railsparameterize
方法validate
result = yourstring.parameterize
这里是源http://apidock.com/rails/ActiveSupport/Inflector/parameterize
我认为最好的方法是使用 gem friendly_id