我即将为我学院的居民在铁轨上建一个新站点。 该网站将允许居民更改学院防火墙的密码(这意味着有一定的要求)。 在网站上,每个居民将拥有一个分配了大量数据的帐户,为此我需要一些身份验证。
我几乎整天都在研究Devise,但我开始怀疑我是否有一个太复杂的任务,用Devise来完成它。
问题是,我需要使用DES加密存储密码,我不确定Devise是否可以处理。 另一件事是,用户无法制作自己的个人资料。管理员将这样做(以确保正确的数据),这意味着用户创建不是默认的。由于没有这方面的控制器,甚至可以这样做吗?
我不确定我是否应该继续使用Devise,或者咬紧牙关并从头开始编写代码。一些意见将不胜感激。
答案 0 :(得分:2)
Devise wiki(https://github.com/plataformatec/devise/wiki/How-To:-Create-a-custom-encryptor)上的这个页面告诉你如何设置自定义加密器。
要使管理员创建用户,请从User模型中删除:registerable模块。然后将用户资源添加到您的应用中,例如:
scope 'admin' do
resources :users
end
使用您的个人资料字段等设置新的/编辑页面,正常的轨道编程。
有关使用CanCan控制对用户资源的访问权限的示例,请查看以下帖子:http://zyphmartin.com/blog/manage-users-with-devise-and-cancan。
答案 1 :(得分:0)
如果设计并不完全符合你的需要,也许Ryan Bates最近的webcast会帮助你。