ruby-on-rails - Rails 4 Devise 重新激活 "soft deleted"帐户

标签 ruby-on-rails ruby ruby-on-rails-4 devise

已关注此tutorial on how to do a soft-delete ,有效。但是,如果用户决定返回并重新激活帐户,最好的方法是什么?或者也有这方面的 wiki 吗?我没找到。

最佳答案

查看您发布的教程链接,他们使用时间 (deleted_at) 来确定用户是否被删除(软删除)。

如果登录凭据正确,您现在可以拥有单独的路线和方法来重新激活用户,我称之为我的reactivate_user

# app/models/user.rb  

  # instead of deleting, indicate the user requested a delete & timestamp it  
  def soft_delete  
    update_attribute(:deleted_at, Time.current)  
  end  

  def reactivate_user  
    update_attribute(:deleted_at, nil)  
  end 
  # ensure user account is active  
  def active_for_authentication?  
    super && !deleted_at  
  end  

  # provide a custom message for a deleted account   
  def inactive_message   
    !deleted_at ? super : :deleted_account  
  end 

关于ruby-on-rails - Rails 4 Devise 重新激活 "soft deleted"帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34981626/

相关文章:

ruby-on-rails - 如何在 Ruby on Rails 中读取远程文件的内容?

javascript - 尝试将 .js 文件添加到我的 Rails 应用程序时出现 ActionController::UnknownFormat

ruby-on-rails - Rails 使用 UTF-8 呈现 JSON 响应

Ruby 按位异或 2 相同长度的 ascii 字符串

ruby - 尽管使用了 "to_i",但没有将 Fixnum 隐式转换为 String

ruby-on-rails - 在 rails 3 和 rails 4.1 之间共享 cookie

ruby-on-rails - 如果属性已填充,则调用 before_update

ruby-on-rails - Rails 管理命名空间和管理模型

ruby-on-rails - Ruby - 从传入的 http 调用中获取请求正文

ruby - 将字符串插入数组中的数组会产生意外结果