ruby 通过URL授权

pgky5nke  于 2023-10-17  发布在  Ruby
关注(0)|答案(2)|浏览(91)

说,我有一个帖子应用程序。有一个表单,任何人都可以填写字段,如标题,文本,电子邮件和subm按钮。不需要注册。
提交表格后,职位应主持。如果它被批准,那么它会出现在主列表中。

在表单提交和批准后,用户会收到一个链接(链接发送到用户的电子邮件),用于编辑他们的帖子。--如何做到这一点?
UPD

问题不在于如何缓和或验证一个帖子/usr**,而在于如何给予他一个只编辑他的帖子的链接**

jhkqcmku

jhkqcmku1#

每当创建用户记录时,您可以轻松地生成一个绑定到记录的令牌,如下所示:
在User.rb中

before_save :generate_token

def generate_token
  self.token = SecureRandom.hex(6)
end

然后当提交用户一个注册确认链接,你可以这样做:

link_to "Validate account", validate_user_path(token: user.token)

和UsersController的示例

def validate
  user = User.find_by_token(params[:token])
  if user
    user.update_attributes(validated: true)
    flash[:notice] = 'User succesfully validated.'
  else
    flash[:error] = 'Couldn't find user with token'
  end
end
8iwquhpp

8iwquhpp2#

简单:
1.生成一个唯一的令牌(例如,使用SecureRandom.hex),并将令牌发送给用户。
1.将新路线添加到您的应用程序。当用户使用token(/posts/verify/:token)请求该URL时,让控制器查找具有匹配token的post。找到后,将帖子上的verified布尔值设置为true

相关问题