Class: HealthDataStandards::Export::TemplateHelper
- Inherits:
-
Object
- Object
- HealthDataStandards::Export::TemplateHelper
- Defined in:
- lib/health-data-standards/export/template_helper.rb
Overview
Class that finds ERb templates. Here is how it can be configured:
- template_format
-
What format (C32, CCDA, etc) are we looking for. This will cause the TemplateHelper to look for template_name.template_format.erb
- template_subdir
-
The sub directory where templates live. If none is provided, it will look for templates in the root of the template_directory
- template_directory
-
The root directory to look in for templates. By default, it is in the template folder of this gem. It can be handy to provide a different directory if you want to use this class outside of the HDS gem
Instance Method Summary collapse
-
#initialize(template_format, template_subdir = nil, template_directory = nil, qrda_version = nil) ⇒ TemplateHelper
constructor
A new instance of TemplateHelper.
-
#partial(partial_name) ⇒ Object
Basically the same template, but prepends an underscore to the template name to mimic the Rails convention for template fragments.
-
#template(template_name) ⇒ Object
Returns the raw ERb for the template_name provided.
- #template_root ⇒ Object
Constructor Details
#initialize(template_format, template_subdir = nil, template_directory = nil, qrda_version = nil) ⇒ TemplateHelper
Returns a new instance of TemplateHelper.
13 14 15 16 17 18 19 |
# File 'lib/health-data-standards/export/template_helper.rb', line 13 def initialize(template_format, template_subdir = nil, template_directory = nil, qrda_version = nil) @template_format = template_format @template_directory = template_directory @template_subdir = template_subdir @qrda_version = qrda_version @template_cache = {} end |
Instance Method Details
#partial(partial_name) ⇒ Object
Basically the same template, but prepends an underscore to the template name to mimic the Rails convention for template fragments
39 40 41 |
# File 'lib/health-data-standards/export/template_helper.rb', line 39 def partial(partial_name) cache_template("_#{partial_name}") end |
#template(template_name) ⇒ Object
Returns the raw ERb for the template_name provided. This method will look in template_directory/template_subdir/template_name.template_format.erb
33 34 35 |
# File 'lib/health-data-standards/export/template_helper.rb', line 33 def template(template_name) cache_template(template_name) end |
#template_root ⇒ Object
21 22 23 24 25 26 27 28 29 |
# File 'lib/health-data-standards/export/template_helper.rb', line 21 def template_root @template_directory ||= File.join(File.dirname(__FILE__), '..', '..', '..', 'templates') if @template_subdir return File.join(@template_directory, @template_subdir) else return @template_directory end end |