Module: Sequel::Plugins::XmlSerializer::DatasetMethods
- Defined in:
- lib/sequel/plugins/xml_serializer.rb
Instance Method Summary collapse
- 
  
    
      #to_xml(opts = OPTS)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    Return an XML string containing all model objects specified with this dataset. 
Instance Method Details
#to_xml(opts = OPTS) ⇒ Object
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.
| 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 | # File 'lib/sequel/plugins/xml_serializer.rb', line 391 def to_xml(opts=OPTS) raise(Sequel::Error, "Dataset#to_xml") unless row_proc || @opts[:eager_graph] x = model.xml_builder(opts) name_proc = model.xml_serialize_name_proc(opts) array = if opts[:array] opts = opts.dup opts.delete(:array) else all end x.public_send(name_proc[opts.fetch(:array_root_name, model.send(:pluralize, model.send(:underscore, model.name))).to_s]) do |x1| array.each do |obj| obj.to_xml(opts.merge(:builder=>x1)) end end x.to_xml end |