save(true) #=> validation あり
save(false) #=> validation 無し
save くらい良く使うメソッドならまだ良いが、そうではないメソッドにおいて、このような引数設計をしてしまうと、あとで読むとその boolean が何を意味するかが読み取りづらい。
rails3 からは上記メソッドは
save :validate => false
のような書き方になっており、その boolean で何を切り替えているのかが呼び出し元を見てわかるようになっている。自分でメソッドを作る場合もこれに倣うようにしている。
0 件のコメント:
コメントを投稿