Sha256: 54d69ab5499d763acb830d3792754976f71865c62bc0f2894359cdc5560f0ef1
Contents?: true
Size: 1.69 KB
Versions: 2
Compression:
Stored size: 1.69 KB
Contents
require 'nested_form/builders' module NestedForm module ViewHelper def nested_form_for(*args, &block) options = args.extract_options!.reverse_merge(:builder => NestedForm::Builder) form_for(*(args << options), &block) << after_nested_form_callbacks end if defined?(NestedForm::SimpleBuilder) def simple_nested_form_for(*args, &block) options = args.extract_options!.reverse_merge(:builder => NestedForm::SimpleBuilder) simple_form_for(*(args << options), &block) << after_nested_form_callbacks end end if defined?(NestedForm::FormtasticBuilder) def semantic_nested_form_for(*args, &block) options = args.extract_options!.reverse_merge(:builder => NestedForm::FormtasticBuilder) semantic_form_for(*(args << options), &block) << after_nested_form_callbacks end end if defined?(NestedForm::FormtasticBootstrapBuilder) def semantic_bootstrap_nested_form_for(*args, &block) options = args.extract_options!.reverse_merge(:builder => NestedForm::FormtasticBootstrapBuilder) semantic_form_for(*(args << options), &block) << after_nested_form_callbacks end end def after_nested_form(association, &block) @associations ||= [] @after_nested_form_callbacks ||= [] unless @associations.include?(association) @associations << association @after_nested_form_callbacks << block end end private def after_nested_form_callbacks @after_nested_form_callbacks ||= [] fields = [] while callback = @after_nested_form_callbacks.shift fields << callback.call end fields.join(" ").html_safe end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
nested_form-0.3.1 | lib/nested_form/view_helper.rb |
nested_form-0.3.0 | lib/nested_form/view_helper.rb |