ActionMailer::Base
has a rather goofy and unintuitive API. Much like controllers, you never explicitly create instances of your mailers. Instead, you interact with them as classes. new
is marked private in ActionMailer::Base
, and method calls on the class are subsequently routed through method_missing
to a new instance of itself. Like I said, unintuitive.
Have a look at the guides and api docs for more information on the correct usage of ActionMailer.