In an attempt to product client definable API returns, Dean Radcliffe, Jake Scruggs and I decided that using the local files would be a good idea. I mentioned this in a previous post. It is a great idea, and the execution is pretty sweet as well.
I am currently fighting with a way to do the sub level arrays such as
Document has many Document tags
So a layout like
<doc>
<tags>
<tag>Tag 1</tag>
<tag>Tag 2 </tag>
<t/ags>
</doc>
where Tags are objects themselves
I got a solution working but it is course and not using Builder XML.
It uses <<--DOCXML DOCXML tags and internally hand hacked xml arguments.
Nasty...
def to_xmls
xml_class_fetch = self.class.to_s.downcase
buff = <<-EOF
<#{xml_class_fetch}>
#{ClientConfig.get("xml_export.#{xml_class_fetch}").map do | xml_field_name, method_call |
case method_call
when Symbol
val = self.send(method_call)
when String
val = self.instance_eval(method_call)
end
if val.is_a?(Array)
val = val.map do |element|
if element.respond_to?(:name)
element_call = element.name
elsif element.respond_to?(:identifier)
element_call = element.identifier
end
"<#{xml_field_name.singularize}>#{element_call}</#{xml_field_name.singularize}>"
end
end
"<#{xml_field_name}>#{val}</#{xml_field_name}>"
end.join("\n")}
</#{xml_class_fetch}>
EOF
end
where the feed looks like
xml_export:
document:
# TODO - may add XML element names etc ...
- ["other-id", :other_id]
- ['created-at', :created_at]
- ['tags', "tags.to_a"]
As one can imagine, I am not happy with this solution at all.
If any one has any better suggestions to return valid XML with nested elements that are part of the model's has_and_belongs_to_many as well as other types of associations, please feel free to shoot me a tweet or comment.
Showing posts with label Jake Scruggs. Show all posts
Showing posts with label Jake Scruggs. Show all posts
Tuesday, October 5, 2010
Monday, September 20, 2010
Rails Conf
Found out this morning that my buddy Jake Scruggs got one of his talks accepted to Ruby Conf. Check out his project: metric_fu
Monday, September 13, 2010
Windy City Rails
Few of us here at Backstop attended Windy City Rails this weekend. It was a good time with a bunch of good speakers including Jake Scruggs covering a ton of topics and providing a massive amount of info.
During the course of the day WCR had a little project written in Rails 3. We, as a collective coded the Dojo Chat Server. Intresting little toy considering it was written in under 8 hours by a group of people with varying levels of experence and decidation to the project.
Just thought it was an interesting experience.
During the course of the day WCR had a little project written in Rails 3. We, as a collective coded the Dojo Chat Server. Intresting little toy considering it was written in under 8 hours by a group of people with varying levels of experence and decidation to the project.
Just thought it was an interesting experience.
Subscribe to:
Posts (Atom)