2010-11-05 18 views
9

Avant de lancer le mien et de commencer à sortir le dictionnaire, quelqu'un connaît-il un rubygem pour générer des noms mémorables adaptés aux touches app. J'ai besoin de quelque chose de prononçable afin que je puisse donner aux utilisateurs des adresses e-mail uniques pour soumettre du contenu. J'aime le nom d'Heroku pour ses applications à titre d'exemple.mémorable générateur de gemme pour ruby ​​

floating-sky-58 
simple-fog-45 
+2

Vérifiez que votre dictionnaire ne contient pas de "gros mots". Un tel générateur aléatoire peut facilement créer quelque chose d'offensant. – CodesInChaos

Répondre

9

Vous pouvez utiliser la gemme randexp. Il est utiliser le système d'exploitation de votre Dictionnary (UNIX uniquement)

avec randexp gem vous pouvez faire quelque chose comme:

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

et ont comme dénomination de Heroku.

Si votre serveur n'a pas de bibliothèque dict installer, vous pouvez essayer faker ou Lorem

mais vraiment beaucoup limitated.

+0

belle, merci – holden

+0

bien, presque parfait sauf heroku n'a pas le dictionnaire! fonctionne bien sur ma machine locale si – holden

+0

J'ajoute une alternative moins bonne – shingara

20

Je viens de faire une mise en œuvre de ce pour un projet et ma solution était d'utiliser la pierre précieuse Forgery et quelque chose comme ceci:

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

Cela se traduit par des chaînes comme ceci:

=> "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" 
+0

C'est génial, merci l'homme. – holden

+1

+1 J'utilise et aime la contrefaçon –

5

Prenez un coup d'oeil à mon bijou, exactement ce que fait

bijou « bazar »

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

https://rubygems.org/gems/bazaar

+0

Et plus rapide que memorable_password par un TON. Merci! –