mail_merge

Mail Merge Gem

Parses a string and replaces specified merge fields with the evaluated result:

Usage
  • MailMerge.merge(content, options = {}, merge_fields = [], delimeter = “::”, allow_dynamic = false)

Examples
  • content = “Welcome to ::site.name::, ::user.full_name::!”

  • merged_content = MailMerge.merge(content, => @site, :user => @user, [‘::site.name::’, ‘::user.full_name::’]) # Basic example

  • merged_content = MailMerge.merge(content, => @site, :user => @user) # This will evaluate any merge fields that start with ‘site’ or ‘user’

  • merged_content = MailMerge.merge(content, => @site, :user => @user, [‘~~site.name~~’, ‘~~user.full_name~~’], “~~”) # Using your own delimeter

  • content = “Welcome, ::[user-1].full_name::!” merged_content = MailMerge.merge(:content => content, :allow_dynamic => true) # This will call find on any fields wrapped in [] (Ex. User.find(1).full_name) # output: “Welcome, Andrew Wiggin!”