ruby/rails ノートその1

配列から最初の3つをeachで出力

a = ["test1","test2","test3","test4"]
 3.times.each do |i|
 puts a[i]
end


classのsuperメソッド

小クラスではsuperメソッドが使える。
superは親クラスのメソッドを呼び出せる。

class A
 def hoge
   puts "aiueo"
 end
 def hoge2
   puts "aiueo2"
 end
end
class B < A
 def hoge
   super
 end
 def hoge2
   super
 end
end

test = B.new
test.hoge
test.hoge2

この場合 aiueoとaiueo2が出力される。
superは主に親クラスのInitializeを呼び出したり、まとめている機能を呼び出すことで簡潔なコードにするメリットがある。

form_forについて

form_forによってnew.html.erbに作成したフォームのsubmitボタンを押した場合、なぜformタグにcreateという単語が明示されていないのにも関わらずcreateアクションに飛ぶのかと疑問に思ったが、resourcesで作ったルーティングではnew.html.erbのフォームから送信を押すとcreateアクションにparamsが飛ぶ。この一連の流れはRailsの規則ということのようだ。つまりそういうものだと納得するしかない模様。

しかし自作アクションに飛ばすことも可能で、その際はオプションをつけてあげたらいい。下記URLを参照。
form_forの仕様
https://qiita.com/shunsuke227ono/items/7accec12eef6d89b0aa9

resourcesの仕様については
https://techracho.bpsinc.jp/baba/2014_02_17/15665



この記事が気に入ったらサポートをしてみませんか?