代码之家  ›  专栏  ›  技术社区  ›  Rob

试图复制friendly_id将强者转化为鼻涕虫的方法

  •  0
  • Rob  · 技术社区  · 8 年前

    我需要复制friendly_id将文本更改为slugs的方式。

    我将此用于我的应用程序

    text        = "random text"
    text_gsubed = (value.gsub ' ', '-')
    slug        = text_gsubed.downcase
    

    但最近我意识到,对于非字母或数字字符的文本,它会生成与firendly_id生成的不同的slug。

    text        = "random >> text"
    text_gsubed = (value.gsub ' ', '-')
    slug        = text_gsubed.downcase
    

    random->>-text

    random-text

    text.slug text.friendly_id

    我怎样才能模仿friendly_id在做什么?

    1 回复  |  直到 8 年前
        1
  •  2
  •   oreoluwa    8 年前

    我可能会研究ActiveSupport::拐点#参数化。

    在您的情况下,您应该能够拨打:

    text.parameterize
    

    如果还想与其他参数组合,可以使用id或其他方法:

    [id, title, others].join(' ').parameterize