Rails验证URL“安全”的字符串

时间:2013-10-21 07:22:46

标签: ruby-on-rails ruby-on-rails-3 validation url

假设我有这条路线:

get 'post/:title' => 'post#show' , :as => 'show_post'

任何人都可以创建帖子,并选择自己的标题。 我不希望标题包含'/','[',']'等字符,因为它可能会导致使用辅助方法show_post_path('blah')生成错误的网址。我确信还有其他的东西,而不是我提到的那些我应该留意的角色。

我正在寻找一种在帖子模型中对此进行验证的方法。

/谢谢

2 个答案:

答案 0 :(得分:3)

您可以使用Rails parameterize方法来validate字符串 前 -

result = yourstring.parameterize

此处是来源http://apidock.com/rails/ActiveSupport/Inflector/parameterize

答案 1 :(得分:2)

我认为制作它的最佳方法是使用gem friendly_id