0

したがって、変数に基づいて特定のプライベートコントローラーメソッドを実行しようとしています:

def new
  @doc = Doc.new
  #see private methods
  @template.name.parameterize.underscore
  respond_to do |format|
    format.html
  end
end

@template.name.parameterize.underscore同じコントローラー内のプライベート メソッドの正確な名前はどこになりますか。それは可能ですか?そうでない場合、それを達成する方法はありますか?

アップデート

代わりに次のコードを使用します。

template = @template.name.parameterize.underscore.to_sym
@doc.send template

undefined method 'newsletter' for #<Doc:blah>コントローラーで呼び出されたプライベートメソッドがあるにもかかわらず、 NoMethodError: が返さnewsletterれます。

4

1 に答える 1