0

オファーに属する旅行から、mail_form gem で生成されたフォームをレンダリングしようとしています。
しかし、次のメッセージでエラーが発生します:
*undefined method `model_name' for NilClass:Class*

旅行/ショー

= render :partial => '/question_forms/form', :question_form => @question_form

これを取得する方法のヒントはありますか?旅行への関連付けとして question_form モデルを含めようとしましたが、うまくいきません。

これは question_forms_controller のデフォルト コードです。

class QuestionFormsController < ApplicationController
  def new
    @question_form = QuestionForm.new
  end

  def create
    begin
        @question_form = QuestionForm.new(params[:question_form])
        @question_form.request = request
        if @question_form.deliver
          flash.now[:notice] = 'Thank you for your message!'
        else
          render :new
        end
      rescue ScriptError
        flash[:error] = 'Sorry, this message appears to be spam and was not delivered.'
      end
  end

end

travels_controller で、同じ方法を使用して @question_form をロードしようとしましたが、これはうまくいかないようです:

 def new
    @offer_season = OfferSeason.find(params[:offer_season_id])
    @travel = @offer_season.travels.find(params[:id])

    @question_form =  @travel.questionforms.new
  end

  def create
    @offer_season = OfferSeason.find(params[:offer_season_id])
    @travel = @offer_season.travels.find(params[:id])


    begin
        @question_form = @travel.questionforms.new(params[:question_form])
        @question_form.request = request
        if @question_form.deliver
          flash.now[:notice] = 'Thank you for your message!'
        else
          render :new
        end
      rescue ScriptError
        flash[:error] = 'Sorry, this message appears to be spam and was not delivered.'
      end
  end
4

0 に答える 0