【问题标题】:Rails: method for 'standardizing' url input from users?Rails:“标准化”用户输入的网址的方法?
【发布时间】:2023-04-03 12:55:01
【问题描述】:

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

但是,当我在视图中显示它时,出现了问题。如果我使用link_to 帮助器,那么此人是否包含http:// 将决定该网址是否有效。但是,如果我自动添加 http://,那么我会为那些将它放在他们的 url 中的用户获得两次。

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

我的问题是:您如何在您的应用中处理来自用户的 URL 输入?作为对最终存储在数据库中的 url 进行标准化的最用户友好的方法,您会推荐什么?

谢谢!

【问题讨论】:

    标签: ruby-on-rails-3 forms url link-to


    【解决方案1】:

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

    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
    

    【讨论】:

      猜你喜欢
      • 2013-12-20
      • 1970-01-01
      • 2013-11-09
      • 2013-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多