Rails 3 には一種のフォーム ウィザードがあります。基本的に、ホテル オブジェクトを作成し、それがすべて完了したら、そのホテルのロケーション オブジェクトを作成します。ホテルを作成するためのコントローラー コードは次のようになります。
def create
@hotel = Hotel.new(params[:hotel])
respond_to do |format|
if @hotel.save
@location = Location.new
format.html { redirect_to '/set_location'}
else
format.html { render action: "new" }
end
end
end
次に、「/set_location」ページに、場所を設定するフォームがあります。ただし、'undefined method model_name for NilClass:Class'
@location インスタンス変数の html.erb でエラーが発生します。
これは、redirect_to の代わりに render '/set_location' を使用すると正常に動作するため、非常に奇妙です。ただし、レコードの重複送信を防ぐために、redirect_to メソッドを使用したいと考えています。
これについて何か助けてくれてありがとう。