Railsヘルパーがコントローラのインスタンス変数を使用するべきではなく、関数のパラメータなどの変数を受け取るべきであるというアイデアをサポートする特定のプログラミングの原則(Demeter?)があるのでしょうか?たとえば、私のChickensController#squawk
アクションが@egg
というインスタンス変数を作成すると仮定します。さらに、squawk
ビューはそうのように実装cockadoodledoo
と呼ばれるヘルパーへの呼び出し、含まれているとします。ビューはを呼び出すように、パラメータとして@egg
を渡すためにRailsヘルパーは、インスタンス変数が存在すると仮定するか、パラメータを受け取るべきですか?
def cockadoodledoo
@egg.to_s
end
はそれが良いか、不必要に冗長になるだろうをし、ヘルパーのための似ているように:私はあなたの1が幸せを願って、ハッカー
def cockadoodledoo(egg)
egg.to_s
end
は答えを主張するために金曜日の午後に十分に退屈しています。 Cockadoodledoo!
This question here is similar, but was never accurately answered.
多くの素晴らしい回答と唯一のチェックマークがあります....ありがとうございます。 – ybakos