gpt4 book ai didi

ruby-on-rails - 设计要求用户接受服务条款?

转载 作者:行者123 更新时间:2023-12-02 12:37:58 27 4
gpt4 key购买 nike

我想强制所有用户接受服务条款,就像这里描述的那样:

Ruby on Rails / Devise - Bypassing custom validation option in model when resetting password

但是,有 2 个要求使得上述方法不适合。

1) 用户不是自行注册的,而是由系统管理员创建的。管理员显然不能代表用户接受条款和条件。用户首次登录时,系统应提示其接受条款和条件。

2) 如果条款和条件事后发生变化。用户后续登录时需要重新接受新条款。

这些看起来是非常标准的工作流程。设计是否提供任何方法来实现这一目标?

如果没有,我认为这项检查需要在我的应用程序 Controller 上的 before_filter 中实现。 (感觉将身份验证与应用程序逻辑混合在一起很脏......)

我必须诉诸于此还是有人可以提出更好的方法?

谢谢

最佳答案

这不是 devise 能够处理的事情,并且 devise 也不应该处理这个问题,因为 TOS 与身份验证无关。

您可以做的就是实现一个状态机,但这可能比您需要的更复杂。

简单的方法是将accepted_tos bool 字段添加到您的用户模型中并将其绑定(bind)到before_filter中,然后每次更新TOS时将accepted_tos设置为false。

关于ruby-on-rails - 设计要求用户接受服务条款?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10499611/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com