2013-10-02 59 views
0

我想为在我的应用上创建帐户的用户添加电子邮件激活链接。但我不知道如何更有效地调整我的数据库。我有两个想法:激活用户注册,激活布尔值和令牌

要么我添加一个active布尔和一个active_token字符串。当用户创建时,active布尔值为false,并且生成active_token。然后用户点击他通过邮件收到的激活链接,并且active布尔值变为true并且active_token不管。但是如果我这样做了,一旦激活了用户的帐户,我的数据库就会全部为零,即active_token

或者我添加一个inactive字符串。创建用户时,inactive字符串包含随机生成的令牌,并且当用户激活其帐户时,inactive字符串被设置为零。所以,我可以创建这样的方法:

def self.active 
    !self.inactive 
end 

你必须做一个最好的方法是什么?如果没有,这两个会更好吗?

回答

0

你也可以尝试这样。把这两个领域在DB

activated_on (DATETIME) & activation_token (CHAR) 

通过该用户是否有效,而当他/她开始活跃起来,你可以估算。

+0

但是''activation_token'将会一旦用户被激活就没有了。所以当数据库被填充时,我会有一个零列。 –