我其实想知道最好的方法。我将要有一系列用户电子邮件,这些用户电子邮件会在注册时自动分配给admin的角色。我需要使用该方法检查电子邮件是否在列表中,将其分配给管理员,如果不是,则将其分配给客户。以下是我试图创建它的方法,但它不起作用......
def set_role
if self[:email] = "douglaswalter2@gmail.com"
self[:role] = "admin"
else
self[:role] = "customer"
end
end
然后我也会打电话,
before_create :set_role
如果用户列表在数组中......我应该将此列表保存在seceret.yml中吗?
答案 0 :(得分:0)
试试这个:
def set_role
if self[:email] == "douglaswalter2@gmail.com"
self[:role] = "admin"
else
self[:role] = "customer"
end
end
答案 1 :(得分:0)
在Ruby中,运营商' ='是一个赋值变量。您需要使用比较运算符' =='。这将检查您正在寻找的条件。
def set_role
if self[:email] == "douglaswalter2@gmail.com"
self[:role] = "admin"
else
self[:role] = "customer"
end
end