3
これらの2つの形式のレンダリングは同じ効果を持ちますか?レンダリング 'contribution'はレンダリングと同義語です:action => 'contribution'
これらの2つの形式のレンダリングは同じ効果を持ちますか?レンダリング 'contribution'はレンダリングと同義語です:action => 'contribution'
要約:はい、同じです。 ただし、文字列を渡すと、render :file
またはrender :template
が呼び出されることがあります。
Here's the API docs for the render function
我々は、下にスクロールし、「ソースコードを表示」をクリックすると、我々はそれがボンネットの下にやっているかを見ることができます。ブロックは、ライン872から始まる
注:このコードを見ることで
872: elsif options.is_a?(String) || options.is_a?(Symbol)
873: case options.to_s.index('/')
874: when 0
875: extra_options[:file] = options
876: when nil
877: extra_options[:action] = options
878: else
879: extra_options[:template] = options
880: end
は、我々はスマートになろうとしていると判断することができます。
/
、(when 0
ケース)で始まる場合、文字列は全く/
が含まれていない場合、それはそれはrender :action
when nil
場合)、
render :file
else
ケース)の途中または最後に/
どこかに含まれている場合 render :template
あなたの質問に満足して回答してくれることを願っています:
これは答えです。ありがとう。 –