method
serialize
v3.0.0 -
Show latest stable
- Class:
ActiveModel::Serializers::Xml::Serializer
serialize()public
No documentation available.
# File activemodel/lib/active_model/serializers/xml.rb, line 85
def serialize
require 'builder' unless defined? ::Builder
options[:indent] ||= 2
options[:builder] ||= ::Builder::XmlMarkup.new(:indent => options[:indent])
@builder = options[:builder]
@builder.instruct! unless options[:skip_instruct]
root = (options[:root] || @serializable.class.model_name.element).to_s
root = ActiveSupport::XmlMini.rename_key(root, options)
args = [root]
args << {:xmlns => options[:namespace]} if options[:namespace]
args << {:type => options[:type]} if options[:type] && !options[:skip_types]
@builder.tag!(*args) do
add_attributes_and_methods
add_extra_behavior
add_procs
yield @builder if block_given?
end
end