如何使用设计:可记忆?

Posted

技术标签:

【中文标题】如何使用设计:可记忆?【英文标题】:How to use Devise: rememberable? 【发布时间】:2012-08-02 08:58:06 【问题描述】:

我正在制作一个 Rails 应用程序。 我想实现一个复选框“记住我”,以便用户下次使用 Devise:rememberable 跳过输入密码。但我不知道如何实现。 如果您对此有任何想法,请向我展示一些示例代码。

【问题讨论】:

【参考方案1】:

在您的用户模型中添加:rememberable 选项

class User < ActiveRecord::Base

  devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable,
         :validatable, :token_authenticatable, :lockable, :omniauthable

  # ...

end

创建迁移以在用户表中添加remember_created_at

class AddRememberCreatedAtToUsers < ActiveRecord::Migration
  def change
    add_column :users, :remember_created_at, :datetime
  end
end

如果您不使用设计默认视图,请将复选框添加到您的视图中:

<%= f.check_box :remember_me %> <%= f.label :remember_me %>

我想这就是你所需要的……

【讨论】:

【参考方案2】:

如果您编写自己的身份验证策略,您可能会遇到可记忆的问题。您的身份验证返回的资源对象(例如User)!方法需要负责从表单数据中设置resource.remember_me。这通常由父 Authenticable 的 validate 方法处理。如果不使用此方法,则必须自己设置。

【讨论】:

以上是关于如何使用设计:可记忆?的主要内容,如果未能解决你的问题,请参考以下文章

优秀HTML5如何抓住用户的记忆点?

如何在 FlowUsNotion 等笔记软件中使用间隔重复记忆系统?

如何写代码?

如何预测股票分析--长短期记忆网络(LSTM)

如何提高学习效率?

使用记忆法打造你的大数据组件的默认端口号记忆宫殿