URLを検証する正規表現があります
/(^$|^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$)/
これは、検証エラーをスローするのではなく、たとえばハッシュ記号を許可しないという意味で正しくないことはわかっていますが、アプリをクラッシュさせるだけです。また、独立した正規表現テスターをクラッシュさせたようです。
テストに使用した URL はhttp://www.wmagazine.com/celebrities/2012/10/jennifer-lawrence-actress-katniss-everdeen-hunger-games-cover-story-ss#slide=1です。
理由を明らかにできる人はいますか?
コード コンテキストは、ユーザーがページにレンダリングするために入力した URL を検証するモデル内で使用されます。
validates :source_link, :format => { :with => /(^$|^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$)/,
:message => 'Only valid urls allowed' }, :if => :apply_validations?