new
/create
とedit
/の両方に使用しているフォーム オブジェクトに、いくつかの複雑な入れ子になったオブジェクトの作成を分割しましたupdate
。
フォームの場合edit
、モデルに既に存在する値を公開する必要があります。これは、多数の属性と関連付けを持つ分厚いモデルであり、編集フォームを介してこれらのほとんどを公開する必要があります。明らかに、モデルから値を取得する各ゲッターを作成できます。
def example
@model.example
end
またはデリゲートを使用します。
delegate :example, to: @model
しかし、これらの解決策はどちらも多くの繰り返しを伴います。
edit
/シナリオでフォーム オブジェクトを使用したのはこれが初めてであり、update
引用できる例を 1 つも見つけることができませんでした (すべての例は、この側面から遠ざかり、new
/create
フォーム オブジェクトに固執しているようです。空のフォームが必要です)。
では、編集フォームに使用されるフォーム オブジェクトでは、モデルの属性と関連付けをフォームにどのように公開すればよいでしょうか?