1

我正在使用Paperclip为用户处理头像,目前使用以下方法设置默认图像:

:default_url => '/images/img-missing_:style.png'

但我想做的是当用户注册时,给他们一个随机头像,直到他们上传自己的头像。

Twitter 用它的“蛋”化身来做到这一点,并且可能有六种不同的颜色被分配。

我怎样才能做到这一点?

请注意,我不想在每次呼叫用户时都显示一个随机头像,而是希望他们在注册时分配一个随机头像,并在他们上传自己的之前一直使用该头像。

4

2 回答 2

2

假设您有 10 个默认头像,您可以使用其用户 ID 的模数来确定显示哪一个。这将是一致且易于实施的。

于 2010-11-23T20:35:14.667 回答
0

您还可以使用用户名长度来确定使用什么图片作为默认头像,假设我使用用户名注册:villain(7 个字符)

您可以使用 7 作为引用图像编号 7(例如 7.png)的方法,以将其设置为默认头像。

为了使其看起来更一致,请添加以下子句:

 0) First, check that the username falls within a plausible character length.. (say 6-14)
 1) if number is even, divide by 2 and use the result to pick up the image.
 2) if result is odd, use the number as it is to pick up the default avatar.

所以,在我上面的例子中,你可以使用 7 作为幻数,并且可能是 avatar 7.png 作为该用户的默认值。

于 2010-11-23T20:50:18.197 回答