我正在制作一个rails应用程序,我有用户也可以是管理员。 管理员可以禁用用户。我允许残疾用户登录并查看内容,但不发布任何内容。
如何创建自定义消息,告知用户登录时其帐户已被禁用?目前我的默认设计通知显示(已成功登录)。
首先,我通过简单地禁用用户登录来解决了这个问题:
user.rb
def active_for_authentication?
super && self.is_active?
end
def inactive_message
is_active? ? super : 'Your account has been disabled. Please contact our support team if you think this was a mistake.'
end
但是像这样用户无法登录。
答案 0 :(得分:0)
由于您的残障用户并非真正“禁用”#34;,我建议您分配一个" readonly"角色,并相应地定制授权。康康舞宝石https://github.com/ryanb/cancan使这很容易,并与设计很好地融为一体。
通过这种方式,您还可以保留真正的禁用功能,稍后您可能需要这样做。