84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
本想google, 但不知道这样的用法怎么去搜索,只能在这问了。 代码:
def current_user @current_user ||= login_from_session end
业精于勤,荒于嬉;行成于思,毁于随。
# 等价于 @current_user = @current_user || login_from_session
如果这样写在多行代码中,确实是 空指针保护 但在你的问题中,整个方法中只有这一行,这个技巧应该叫 Caching with Instance Variables,为了在多次调用这个方法时提高性能
空指针保护
Caching with Instance Variables
@current_user ||= login_from_session # 等价与 @current_user || @current_user = login_from_session # 如果 @current_user 不为 nil 或 false, # 就使 @current_user 值为 login_from_session 的返回值
这是 Ruby 程序员的常用方法: 空指针保护 。
如果这样写在多行代码中,确实是
空指针保护
但在你的问题中,整个方法中只有这一行,这个技巧应该叫
Caching with Instance Variables
,为了在多次调用这个方法时提高性能这是 Ruby 程序员的常用方法:
空指针保护
。