module Roda::RodaPlugins::MailerPreview::InstanceMethods
Public Instance Methods
preview(mail)
click to toggle source
Pass an instance of Mail
to render a preview
r.on "previews" do r.is "signup-email" do mail = YourMailer.mail("/signup-email") preview(mail) end end
# File lib/roda/plugins/mailer_preview.rb, line 43 def preview(mail) acceptable_headers = %w(Date From To Subject) headers = mail.header_fields.select do |field| acceptable_headers.include?(field.name) end render(path: __dir__ + "/preview.erb", locals: { mail: mail, headers: headers }) end
preview_index(urls, path: request.path)
click to toggle source
Pass an array of paths to render an index of available previews
r.is "previews" do available_previews = ["/previews/signup-email"] preview_index(available_previews) end
# File lib/roda/plugins/mailer_preview.rb, line 59 def preview_index(urls, path: request.path) render(path: __dir__ + "/index.erb", locals: { urls: urls, path: path }) end