1
ユーザーが電子メールメッセージを別のユーザーに送信するフォームを送信させようとしています。私はメーラーのビューに表示する変数に電子メールの本文を格納しようとしていて、 '無し'になっている以外、すべて正常に動作しています。私はuser_mailer.rbを設定します。アクションメーラー変数を表示すると "nil"が返されます
class UserMailer < ActionMailer::Base
default :from => "[email protected]"
def message_user(user, recipient, subject, body)
@user = user
@recipient = recipient
@body = "#{body}"
mail(:to => "#{recipient.name} <#{recipient.email}>", :subject => "Reelify message: #{subject}")
end
end
、ここでは私のmessages_controller.rbです:
def new
@user = current_user
if !params[:receiver].blank? and !params[:subject].blank? and !params[:body].blank?
@recipient = User.find_by_name(params[:receiver])
UserMailer.message_user(@user, @recipient, params[:subject], params[:body]).deliver
flash[:notice] = "This flash means it should work.. #{@user.name} #{@recipient.name}"
end
エンド
私はビューで@bodyを呼び出すと、それが空である(@body .inspect)の結果は 'nil'になります。しかし、件名の代わりに#{body}のようなことをすれば、テキストはうまく表示されます。
誰でも手掛かりがありますか?
@ userについては、正しく表示されますか? @bodyはレールで使用されているかもしれませんが、名前を変更してみてください。 – gayavat
私は変数名を@ content/contentに変更して、すべて正常です。あなたは答えとしてあなたのコメントを追加できますか?私はそれを受け入れますか? – kcurtin
はい、必ず=)。ありがとう – gayavat