On this page
class ActionMailer::Preview
Attributes
params[R]
Public Class Methods
# File actionmailer/lib/action_mailer/preview.rb, line 104
def all
load_previews if descendants.empty?
descendants.sort_by { |mailer| mailer.name.titleize }
end
Returns all mailer preview classes.
# File actionmailer/lib/action_mailer/preview.rb, line 112
def call(email, params = {})
preview = new(params)
message = preview.public_send(email)
inform_preview_interceptors(message)
message
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.
# File actionmailer/lib/action_mailer/preview.rb, line 125
def email_exists?(email)
emails.include?(email)
end
Returns true
if the email exists.
# File actionmailer/lib/action_mailer/preview.rb, line 120
def emails
public_instance_methods(false).map(&:to_s).sort
end
Returns all of the available email previews.
# File actionmailer/lib/action_mailer/preview.rb, line 130
def exists?(preview)
all.any? { |p| p.preview_name == preview }
end
Returns true
if the preview exists.
# File actionmailer/lib/action_mailer/preview.rb, line 135
def find(preview)
all.find { |p| p.preview_name == preview }
end
Find a mailer preview by its underscored class name.
# File actionmailer/lib/action_mailer/preview.rb, line 98
def initialize(params = {})
@params = params
end
# File actionmailer/lib/action_mailer/preview.rb, line 140
def preview_name
name.delete_suffix("Preview").underscore
end
Returns the underscored name of the mailer preview without the suffix.
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.