2012-06-27 60 views
0

错误似乎是非常非描述:ActionMailer的邮件方法适用于Heroku,但不适用于本地主机?

failed with ArgumentError: A sender (Return-Path, Sender or From) required to send a message 

我觉得这不是真正的问题,因为我已经试过“从”即使我设置默认指定。此外,该代码是本地主机和Heroku的相同...

def invite_dealer(auction, name, email, dealer) 
    return false if dealer.bids.where("auction_id = ?", auction.id).present? 
    @name = name #used on template 
    @email = email 
    @auction = auction #this too 
    mail(:to => @email, :subject => "New Auction - #{auction.car.name}", :from => "[email protected]") 
end 
+0

PS我正在使用的所有其他邮件延迟都可以正常使用。 – davecom

回答

2

的如果mail方法未从invite_dealer方法中调用,则可能发生错误failed with ArgumentError: A sender (Return-Path, Sender or From) required to send a message

所以把条件returninvite_dealer方法之前调用mail方法是坏主意。

+0

这正是问题所在,你不能从邮件方式“退货”来短路交货。您需要将逻辑设置为不在相关邮件程序外调用邮件程序。 –

0

加入这行来development.rb似乎已经解决了 - 奇怪的所有其他邮件方法进行工作:

Rails.application.routes.default_url_options[:host]= 'localhost:3000' 
相关问题