Ruby on rails 修改设计以检查注册许可?
我的应用程序有一个Ruby on rails 修改设计以检查注册许可?,ruby-on-rails,ruby-on-rails-3,devise,user-registration,Ruby On Rails,Ruby On Rails 3,Devise,User Registration,我的应用程序有一个权限模型和带有电子邮件字段的权限表。现有用户(Usermodel)可以添加他们希望邀请查看其信息的人的电子邮件地址。这些电子邮件地址存储在数据库的权限.email字段中 如何修改Desive的注册过程,使其仅允许在权限表中拥有电子邮件地址的人创建帐户 之前在用户模型上使用了验证器;e、 g validates :email, :my_access_control => true 然后创建这样的东西 class MyAccessControlValidator <
权限
模型和带有电子邮件
字段的权限
表。现有用户(User
model)可以添加他们希望邀请查看其信息的人的电子邮件地址。这些电子邮件地址存储在数据库的权限.email
字段中
如何修改Desive的注册过程,使其仅允许在
权限表中拥有电子邮件地址的人创建帐户 之前在用户模型上使用了验证器;e、 g
validates :email, :my_access_control => true
然后创建这样的东西
class MyAccessControlValidator < ActiveModel::EachValidator
def validate_each(object, attribute, value)
if ... not in permissions table..
... add to objects error collection why they cannot register
end
end
end
类MyAccessControlValidator
如果注册用户更改其电子邮件地址会发生什么情况?谢谢,我刚刚添加了:on=>:create
,这样它就不会在更新期间运行验证。