2

現在、Ruby on Rails 3.2.8 を使用しており、ActionMailer を使用して電子メールの本文内に画像を含む電子メールを送信しようとしています。オンラインで検索しましたが、どの指示も役に立ちません。以下は、Railscasts のエピソードから使用したものの例です。

user_mailer.rb

def registration_confirmation(user)
  @user = user
  attachments["rails.png"] = File.read("#{Rails.root}/public/images/corporate_logo.png")
  mail(:to => "#{user.name} <#{user.email}>", :subject => "Registered")
end

registration_confirmation.html.erb

<%= image_tag("corporate_logo.png", :alt => "CorporateLogo") %>
<p><%= @user.name %>,</p>
<p>Thank you for registering!</p>
<p><%= link_to "Edit profile", edit_user_url(@user) %></p>

ありがとう!

4

1 に答える 1

2

ここの例に従ってみてください。試したことはありませんが、うまくいくはずです。その railscasts エピソードの例は、アセット パイプラインを追加する前のバージョンのレール用です。

試す:

attachments['rails.png'] = File.read('/assets/corporate_logo.png')

また

attachments['rails.png'] = File.read('corporate_logo.png')

または、この回答を参照してください。役立つ場合があります。彼らはそれを次のように設定しました:

attachments["rails.png"] = File.read("#{Rails.root}/app/assets/images/corporate_logo.png")
于 2012-09-25T01:10:21.007 に答える