1

我需要一些允许用户通过电子邮件与 rails 应用程序交互的 gem,而无需注册。例如:我发布了要出售的东西,并附有电子邮件和所有控件(CRUD 和提交),我在电子邮件中作为链接(删除、更新等)获得。我想以某种方式将其连接到设计,并有机会使用具有购物历史的同一电子邮件进行进一步注册。

要发布某些东西(服务或产品)进行销售,用户必须填写:

姓名、电子邮件(验证唯一)、电话。这可能会或可能不会用于使用设计的未来注册。

同一种形式可能是:图片、描述等领域的产品......

这个想法是在没有密码的情况下在用户数据库中存储:ID、姓名、电子邮件、电话,或者以某种方式等待注册

4

1 回答 1

1

只需根据您将添加到 URL 的一些哈希值创建您自己的具有授权的 CRUD 控制器。将这些哈希值存储在数据库中并验证用户是否可以合法地执行操作。

警告:任何拥有有效 URL 的人都可以执行这些操作。

好吧,您在评论中写道您希望它与设计集成。Devise 支持登录令牌,但适用于现有用户。然后,您应该以某种方式虚拟注册它们。最简单的方法是:

  1. 在 URL 中包含用户电子邮件和一些 tolen

  2. 检查我们是否已经有这样的用户 - 在此处添加令牌验证

    user = User.find_by_email(params[:email])
    if user.nil?
      user = User.create(field_1: value1, field_2: value2)    
    end
    
    sign_in(user)
    
    redirect_to after_sign_in_path(user)
    
  3. 完毕。根据 URL 中包含的电子邮件和令牌对用户进行身份验证。

于 2013-05-04T10:03:36.073 回答