某些网站在您创建项目文件时会创建随机假名称。例如,在Heroku中创建项目可以生成“巨大堡垒-4566”作为项目名称。我想知道他们是如何创建这些名称的,因为我想在iOS应用程序中使用相同的技术。
我的猜测是他们有一个名字的数据库,他们只是随机选择名字,但他们从哪里获取这些数据库?任何提示?
答案 0 :(得分:1)
它看起来像是两张桌子:一张形容词表,一张名词表。创建项目时,他们可以通过从每个表中选择一个随机条目,然后在结尾附加一个随机生成的数字来创建名称。
根据this site,可以有效地从表中选择一个随机条目(假设id / word的表定义):
SELECT `word` FROM `nouns`
WHERE id >= (SELECT FLOOR(MAX(id) * RAND()) FROM `nouns`)
ORDER BY `id` LIMIT 1
重复一个形容词。
答案 1 :(得分:1)
当你特别要求Heroku时,你可以在这里阅读他们的实施How can I programmatically generate Heroku-like subdomain names?。
答案 2 :(得分:0)
RandomUsername使用了形容词和形容词。名词。它没有使用字典或通用字词数据库,因为其中许多词语具有强烈的负面含义,因此不适合商业环境。