0
我知道Devise.friendly_token(20)
会创建一个长度为20个字符的密码。然而,我在看这条线:Devise.friendly_token的类似数组的参数
Devise.friendly_token[0,20]
,我不明白这些参数的含义。我在看什么,这是一种在其他环境中出现的语法吗?
我知道Devise.friendly_token(20)
会创建一个长度为20个字符的密码。然而,我在看这条线:Devise.friendly_token的类似数组的参数
Devise.friendly_token[0,20]
,我不明白这些参数的含义。我在看什么,这是一种在其他环境中出现的语法吗?
在表达式中括号:
Devise.friendly_token[0,20]
# -------------------^----^
被应用到返回值的Devise.friendly_token
所以你有什么等价于:
token = Devise.friendly_token
token[0,20]
或:
Devise.friendly_token()[0,20]
(Devise.friendly_token)[0,20]
请记住,方法调用 - 圆括号在Ruby中通常是可选的,并且在没有任何参数的情况下调用该方法时几乎从不使用。
顺便说一句,Devise.friendly_token
可以采取零或一个参数:
.friendly_token(length = 20) ⇒ Object
生成友好串随机用作令牌。默认情况下,长度为20个字符。
因此可以这样说Devise.friendly_token
使用默认length
或Devise.friendly_token(6)
使用非默认长度。