0
A
回答
5
它指定[]
params["user][:role_ids]
到如果params["user][:role_ids]
是nil
或另一falsy值...
否則,它保留的params["user][:role_ids]
原始值實施例
variable = nil
variable ||= "string"
puts variable # "string"
variable2 = "value"
variable2 ||= "string"
puts variable2 # "value"
2
如果params[:user][:role_ids]
是nil
,它就會與[]
否則params[:user][:role_ids]
保持它的價值進一步
1
如果左邊的值尚未分配初始化,將其分配給右手價值。如果它被分配,保持它自己。 Michael Hartl的RoR tutorial site可以找到一個很好的解釋。
1
這是memoize的運營商,它的兩兩件事之一:
- 如果在它左邊的值不爲零,它只是返回值
- 如果在它左邊的值爲零(或未定義)它設置它。
1
這是一個條件分配在Ruby中。您可以在這裏閱讀更多關於它的信息:Ruby Operators
1
如果變量尚未設置,它將爲變量設置一個值。含義
class Something
attr_accessor :some_value
def perform_action
@some_value ||= "Mom"
puts @some_value
end
foo = Something.new
foo.perform_action -> "Mom"
foo.some_value = "Dad"
foo.perform_action -> "Dad"
相關問題
- 1. 在Ruby中做什麼==?
- 2. set_if_nil.call在ruby中做什麼?
- 3. 什麼zip庫與Ruby 1.9.2兼容?
- 4. 爲什麼這不適用於Ruby 1.9.2?
- 5. Ruby代碼在做什麼?
- 6. '|| ='操作符在ruby中做了什麼?
- 7. String(42)在Ruby中做什麼?
- 8. World()方法在ruby中做了什麼?
- 9. Ruby 1.9.2 + FreeBSD
- 10. mysql2,rvm,ruby 1.9.2
- 11. Ruby 1.9.2中Process.fork和Process.spawn之間的區別是什麼
- 12. ruby_executable_hooks是做什麼的?
- 13. Ruby的Array#shift做什麼?
- 14. 這個Ruby函數在做什麼?
- 15. Ruby中send()是做什麼的?
- 16. 在Perl中做什麼=〜做什麼?
- 17. 如何在1.9.2中剖析Ruby代碼?
- 18. 在RubyMine和Matrix中使用Ruby 1.9.2
- 19. 在Ruby 1.8.7或1.9.2中編碼
- 20. 在Ruby 1.9.2中導出爲CSV
- 21. 爲什麼不使用RVM安裝Ruby 1.9.2-head?
- 22. Ruby 1.9.2 Object.respond_to? :hello && Object.hello給出錯誤,爲什麼?
- 23. 爲什麼Ruby 1.9.2刪除「。」來自LOAD_PATH,還有什麼替代方案?
- 24. ruby 1.9.2和ruby 2.0之間的主要/次要區別是什麼?
- 25. 4.to_s(2)中的整數2在Ruby中做了什麼?
- 26. Ruby on Rails'method'to_sym'是做什麼的?
- 27. :: MyClass Ruby scope operator是做什麼的?
- 28. Ruby 1.9.2 + Rails 3.0.3 + postgresql + windows vista
- 29. Radiant CMS ruby1.9.2/rails3支持
- 30. 從ruby 1.8.7升級到1.9.2
重複:?什麼是'|| ='Ruby中的意思是(http://StackOverflow.Com/q/995593/)[?什麼是'|| ='在Ruby中的意思] (http://StackOverflow.Com/q/3800957/),[Ruby中的'|| ='是什麼?](http://StackOverflow.Com/q/3945711/),[Ruby管理變量賦值中的雙重管道符號?](http://StackOverflow.Com/q/4500375/),[「|| ='」操作數在ruby中代表什麼意思](http://StackOverflow.Com/q/5124930/),[在Ruby語言中,|| || =是什麼意思?](http://stackOverflow.Com/q/5230162/),[是ruby運算符'|| ='智能?](http://StackOverflow.Com/q/2989862 /),... –
... [|| ='是什麼意思?](http://StackOverflow.Com/q/7556902/),也可能是其他許多人。另請參閱[|| ='(或等於)線程和頁面的確切列表](http://Ruby-Forum.Com/topic/151660/)。 *請*,*請*,*請*不要提出重複的問題。它只是散佈圍繞該網站的信息,而這些信息只能在一個地方找到。謝謝! –
@JörgWMittag:爲什麼告訴393代表用戶不要提出重複的問題,而不是4個代表3K以上的代表(因此擁有相近的權限)不要回答重複的問題? –