class ActionMailer::Preview
Attributes
[R] | params |
Public class methods
Returns all mailer preview classes.
Source code GitHub
# File actionmailer/lib/action_mailer/preview.rb, line 80
def all
load_previews if descendants.empty?
descendants.sort_by { |mailer| mailer.name.titleize }
end
Returns the mail object for the given email name. The registered preview interceptors will be informed so that they can transform the message as they would if the mail was actually being delivered.
Source code GitHub
# File actionmailer/lib/action_mailer/preview.rb, line 88
def call(email, params = {})
preview = new(params)
message = preview.public_send(email)
inform_preview_interceptors(message)
message
end
Returns true
if the email exists.
Source code GitHub
# File actionmailer/lib/action_mailer/preview.rb, line 101
def email_exists?(email)
emails.include?(email)
end
Returns all of the available email previews.
Source code GitHub
# File actionmailer/lib/action_mailer/preview.rb, line 96
def emails
public_instance_methods(false).map(&:to_s).sort
end
Returns true
if the preview exists.
Source code GitHub
# File actionmailer/lib/action_mailer/preview.rb, line 106
def exists?(preview)
all.any? { |p| p.preview_name == preview }
end
Find a mailer preview by its underscored class name.
Source code GitHub
# File actionmailer/lib/action_mailer/preview.rb, line 111
def find(preview)
all.find { |p| p.preview_name == preview }
end
Source code GitHub
# File actionmailer/lib/action_mailer/preview.rb, line 74
def initialize(params = {})
@params = params
end
Returns the underscored name of the mailer preview without the suffix.
Source code GitHub
# File actionmailer/lib/action_mailer/preview.rb, line 116
def preview_name
name.delete_suffix("Preview").underscore
end