【问题标题】:memorable name generator gem for ruby红宝石令人难忘的名称生成器宝石
【发布时间】:2011-05-05 12:31:54
【问题描述】:

在我自己动手开始翻字典之前,有没有人知道 ruby​​gem 可以生成适合应用程序键的令人难忘的名称。我需要一些可发音的东西,以便我可以为用户提供唯一的电子邮件地址来提交内容。我喜欢 Heroku 为其应用程序命名的例子。

floating-sky-58
simple-fog-45

【问题讨论】:

  • 检查您的字典是否包含任何“坏词”。这样的随机生成器很容易创造出令人反感的东西。

标签: ruby-on-rails ruby ruby-on-rails-3 rubygems gem


【解决方案1】:

您可以使用 randexp gem。它使用您操作系统中的字典(仅限 UNIX)

使用randexp gem,您可以执行以下操作:

/[:word:]-[:word:]-\d+/.gen

并且有类似heroku的命名。

如果您的服务器没有安装字典库,您可以尝试fakerLorem

但确实非常有限。

【讨论】:

  • 嗯,几乎完美,除了 heroku 没有字典!虽然在我的本地机器上工作正常
  • 你可能想提防粗鲁的话 :) 我似乎记得这样的 DailyWTF。
【解决方案2】:

我刚刚为一个项目做了一个实现,我的解决方案是使用 Forgery gem 和类似的东西:

[Forgery::Basic.color, Forgery::Address.street_name.split(" ").first, rand(100)].join("-").downcase

这会产生如下字符串:

=> "orange-nobel-93"
=> "indigo-holmberg-41"
=> "khaki-sunfield-31"
=> "goldenrod-warrior-92"
=> "fuscia-manley-75"
=> "violet-village-17"
=> "violet-west-11"
=> "goldenrod-oak-74"
=> "yellow-hermina-74"
=> "red-shopko-36"
=> "purple-esch-43"
=> "teal-sutherland-44"
=> "blue-butterfield-56"
=> "yellow-mcbride-41"

【讨论】:

    【解决方案3】:

    看看我的宝石,就是这样做的

    宝石“集市”

    Bazaar.heroku
    => "inquisitive-cavern-6617"
    => "jubilant-sunset-9301"
    => "frightened-geyser-4542"
    

    https://rubygems.org/gems/bazaar

    【讨论】:

    • 而且比记忆密码快一吨。谢谢!
    【解决方案4】:

    haikunator gem 是一个不错的选择。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-08
      • 2019-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多