Rails:用户"标准化"url输入的方法?

And*_*rew 4 forms url link-to ruby-on-rails-3

我希望用户在我的Rails应用程序中能够在他们的个人资料中分享他们个人网站的链接.很简单,我有一个名为的列website和一个文本字段,他们可以填写它以使其工作.

但是,当我在视图中显示这个问题时.如果我使用link_to帮助者,那么包括的人http://是否确定该URL是否有效.但是,如果我自动预先添加,http://那么对于将DID放入其网址的用户,我会获得两次.

我确信这是一个相当普遍的问题,但我找不到任何好的博客文章或解决它的SO问题.

我的问题是:您如何处理应用中用户的URL输入?您会建议什么是最方便用户友好的方式来标准化最终存储在数据库中的URL?

谢谢!

Mar*_*ran 6

如果我正确理解您的问题,我可能会确保每当用户保存他们的数据时,它会使用以下内容检查并修改(如果需要)网站属性.

class User
  before_save :sanitize_website

  def sanitize_website
    unless self.website.include?("http://") || self.website.include?("https://")
      self.website = "http://" + self.website
    end
  end
end
Run Code Online (Sandbox Code Playgroud)