Gmail から連絡先のリストをインポートし、チェックボックスを使用して返されたメールを選択し、選択後にユーザーに招待状を送信しています。私のログを見ると、出力には正しい形式の電子メールがあり、すべて問題ないようです。
Sendgrid でメール アクティビティを見ると、メール アドレスに追加の文字が添付されているため、失敗します。sendmail を使用して他のメーラーでメールを送信する際に問題はありませんが、これはこれらの追加の文字を追加しているようで、どこから来たのかわかりません。
他の誰かがこれが起こっているのを見ましたか? または、これを修正する方法について提案がありますか?
期待される結果メールアドレス: test@gmail.com
実績 メールアドレス: "test@gmail.com"@i04-01
user_mailer
def invitation(email_addresses)
@host = ((Rails.env == "production") ? "http://www.test.com" : "http://localhost:3000")
attachments.inline['people.jpg'] = File.read("#{Rails.root}/app/assets/images/people.jpg")
#attachments.inline['people.jpg'] = File.read("#{Rails.root}/app/assets/images/Girl.jpeg")
email_addresses.each do |email|
mail(:to => email, :subject => "Hello from test!")
end
終わり
ユーザーコントローラー
def import
#@user = User.find(params[:id])
#@users = User.find(session[:user_id])
begin
@sites = {"gmail" => Contacts::Gmail, "yahoo" => Contacts::Yahoo, "hotmail" => Contacts::Hotmail}
@contacts = @sites[params[:from]].new(params[:login], params[:password]).contacts
@users, @no_users = [], []
@contacts.each do |contact|
#if u = User.find(:first , :conditions => @users.email = �#{contact[1]}� , :include =>[:user])
if u = User.find(:first, :conditions => "email = '#{contact[1]}'")
@users << u
else
@no_users << {:name => contact[0], :email => contact[1]}
end
end
#if @contacts.save
#end
respond_to do |format|
format.html { render :template => 'shared/_contact_list', :layout => false }
format.xml { render :xml => @contacts.to_xml }
end
end
終わり
def send_bulk_mail
name_email =[]
email_addresses=[]
names=[]
post=params[:post]
post.each do |k,v|
if v=="1"
name_email << k
end
end
name_email.each do |n|
email_addresses << n.split(",")[1]
end
UserMailer.invitation(email_addresses).deliver
ありがとう