次のことをしようとしています
@message = render_to_string ( :sender => sender, :template => "template" )
しかし、テンプレートで @sender にアクセスすると、nil:NilClass であることがわかります。正しい変数を渡すかどうかを再確認しましたが、まったく問題ありません。render_to_string に変数を渡す方法が他にあるのではないでしょうか?
次のことをしようとしています
@message = render_to_string ( :sender => sender, :template => "template" )
しかし、テンプレートで @sender にアクセスすると、nil:NilClass であることがわかります。正しい変数を渡すかどうかを再確認しましたが、まったく問題ありません。render_to_string に変数を渡す方法が他にあるのではないでしょうか?
使用している構文である可能性があります。:locals
次の引数を使用してみてください。
@m = render_to_string :template => "template", :locals => {:sender => sender}
次に、テンプレート内のローカル変数としてsender
( なしで)アクセスする必要があります。@
これを試して:
ac = ActionController::Base.new()
ac.render_to_string(:partial => 'path to your partial',:locals => {:varable => your variables})
render_to_string で別の形式のパーシャルをレンダリングしようとしていました。私にとって本当にうまくいったのは:
render_to_string(:partial => 'partial_file.html', :locals => {:変数 => 変数}, :format => :html)
ファイルの名前は_partial_file.html.erb
.