Module | Sequel::Plugins::XmlSerializer::DatasetMethods |
In: |
lib/sequel/plugins/xml_serializer.rb
|
Return an XML string containing all model objects specified with this dataset. Takes all of the options available to Model#to_xml, as well as the :array_root_name option for specifying the name of the root node that contains the nodes for all of the instances.
# File lib/sequel/plugins/xml_serializer.rb, line 391 391: def to_xml(opts=OPTS) 392: raise(Sequel::Error, "Dataset#to_xml") unless row_proc || @opts[:eager_graph] 393: x = model.xml_builder(opts) 394: name_proc = model.xml_serialize_name_proc(opts) 395: array = if opts[:array] 396: opts = opts.dup 397: opts.delete(:array) 398: else 399: all 400: end 401: x.public_send(name_proc[opts.fetch(:array_root_name, model.send(:pluralize, model.send(:underscore, model.name))).to_s]) do |x1| 402: array.each do |obj| 403: obj.to_xml(opts.merge(:builder=>x1)) 404: end 405: end 406: x.to_xml 407: end