0

使用Devise 2.1构建像 Pinterest 一样的简单邀请系统的最佳实践是什么?

换句话说,我想允许新用户使用邀请表进行注册。然后,我想这样:

  1. 首先,Devise 发送一封“感谢您加入 Fuu 等候名单”的电子邮件。
  2. 为了完成,也许每 3 小时有一个 cron 任务,Devise 发送一封“你已被邀请加入 Fuu ”的电子邮件。

我正在使用带有可确认模块的设计 2.1。我认为devise_invitablegem 在我的情况下没有用,因为受邀用户不应该能够邀请新用户。

4

2 回答 2

0

我之前问过一个类似的问题,也许对你有用:

rails beta 请求注册并获得社交媒体分享奖励

基本上,您要做的是将用户的电子邮件存储在“请求”模型中,这样您就可以得到一个表,您可以在其中存储电子邮件并创建一个字段类型为布尔值并处理。这导致:

|email         |processed|
john@doe.com    true
alex@google.com false

然后在 /lib/tasks/ 中创建一个新的 rake 任务,它循环真实的所有请求并分批处理它们。这是一个粗略的想法,但它应该让你开始。

于 2012-06-14T10:17:00.443 回答
0

让您入门的粗略想法:您基本上想要的是用户在您的邀请系统上注册的商店。Stackoverflow 不适用于完整的锻炼,它可以让您朝着正确的方向前进;)这太复杂了,无法完全写出来。

路线:

    get '/signup/:code' => "devise/registrations#new"

控制器:

params[:code]

unless params[:code] 
   .. check if the code is correct
   .. render your form here
else
  .. you need an invitation code to join our site
end

模型

on_create :set_processed
def set_processed
  .. set processed to true
end
于 2012-06-14T13:23:53.887 回答