如何通过设计发送电子邮件附件?
问题描述:
在我的控制文件:如何通过设计发送电子邮件附件?
class RegistrationsController < Devise::RegistrationsController
layout "devise"
before_action :check_url, only: [:new]
def create
attachments["logo.png"] = File.read("#{Rails.root}/public/assets/images/logo.png")
super
end
end
在我看来文件:
<%= image_tag attachments['logo.png'].url %>
后比我得到这个错误,
未定义的局部变量或方法'附件的
答
覆盖设计cr eate方法并不是很好的解决方案。你可以为此写回调。
class User < ActiveRecord::Base
# ...
after_create :send_admin_mail
def send_admin_mail
UserMailer.send_new_user_message(self).deliver
end
# ...
end
和您的用户邮件应该像
class UserMailer < ApplicationMailer
default from: '[email protected]'
def send_new_user_message(user)
@user = user
@url = 'http://example.com/login'
attachments.inline['image.jpg'] = File.read('/path/to/image.jpg')
mail(to: @user.email, subject: 'Welcome to My Awesome Site')
end
end
+0
我实现了这一点,但我不能看到邮件模板中的图像 –
+0
你能分享你git repo或gist,所以我可以检查哪里出了问题? –
+1
这对我来说工作得很好。我在我的Gmail帐户中被封锁了图片附件。日Thnx –
我要报名邮件发送到用户并在这我想在邮件模板中添加logo图片。 –
@pulkit Agarwal这不适用于我:( –
张贴您的控制器代码在这里 –