2017-07-21 3 views
-1
次のコード行のために

いつコロンを使用できますか?

validates :name, presence: true, length: { minimum: 5, maximum: 100 } 

私はスペースとコロン、シンボル、またはシンボルコロンとその後のスペースを使用しないとき?

例えばvalidates :namepresence: true

私は違いを理解していません。

+0

ハッシュの記号( ':name')とキー表記(' presence: 'または':presence => ')の間に混乱があります – Pavan

答えて

3
validates :name, presence: true, length: {minimum: 5, maximum: 100} 

は次にある:

:namevalidatesメソッドの呼び出し、およびキー :presence:lengthを有する二スプラッティングハッシュが第二パラメータであるため最初の[ Symbol]パラメータで
validates(:name, **{presence: true, length: {minimum: 5, maximum: 100}}) 

。現代のRubyで

Hashはコロン記法で宣言されることがあります。

{a: 42} 

ダブルスプラッティングハッシュパラメータカーリーが省略されるかもしれないため、また

{:a => 42} 

と同じです。

関連する問題