Well, that is exactly what I needed. Thanks again, Jamie! I can't say if the following code is the best, most efficient way, but here it is for posterity sake-
module FaqTag include Radiant::Taggable class TagError < StandardError; end # <r:answername /> # <r:summary /> # etc... # (Answerbookpage.column_names.dup).each do |method| tag(method.to_s) do |tag| tag.locals.page.send(method) end end tag "faq" do |tag| tag.expand end tag "faq:each" do |tag| result = [] Answerbookpage.find(:all).each do |item| tag.locals.child = item tag.locals.page = item result << tag.expand end result end end Quoting Jamie Wilkinson <[EMAIL PROTECTED]>: > Howdy Todd, > > A combination of cloning the <r:children:each> tag (slightly lower in > the same file) and the metamethod you pointed out should work just > fine. So it would look more like: > > <r:faq:each> > <r:answername /> > <r:summary /> > </r:faq:each> > > -jamie > > On Jan 10, 2007, at 7:46 AM, Todd McGrath wrote: > > > Hello again, > > > > I'm making some progress on extensions and now I'm looking for a > > little push in > > the right direction. > > > > I'm working on an extension for displaying data from database for > > the FAQ > > section of a site using tags (mental branch). > > > > * Created a FaqExtension and include the tag: > > > > def activate > > Page.send :include, FaqTag > > end > > > > * in lib/faq_tag.rb: > > module FaqTag > > include Radiant::Taggable > > > > class TagError < StandardError; end > > > > tag "faq" do |tag| > > faq = Answerbookpages.find(:all) > > raise TagError.new("Faq cannot be found") unless faq > > tag.locals.faq = faq > > tag.expand > > end > > > > tag "faqhello" do |tag| > > "Hello #{tag.attr['name'] || 'mundo'}!" > > end > > > > end > > > > * "faqhello" (<r:faqhello/>) works and "faq" tag is retrieving from > > db. > > (Obviously, I have an Answerbookpages class > > > > I'm looking for some insight to take it further. > > > > In my FAQ page, I'd like to use something like the following: > > > > <r:faq> > > <r:answername /> > > <r:summary /> > > </r:faq> > > > > where "answername" and "summary" are fields in the answerbookpages > > table. > > > > Not sure where to begin.. > > > > In the StandardTags class, I see: > > # > > # <r:url /> > > # <r:title /> > > # etc... > > # > > ((Page.column_names.dup << 'url') - ['class_name', 'created_by', > > 'updated_by']).each do |method| > > tag(method.to_s) do |tag| > > tag.locals.page.send(method) > > end > > > > Maybe the answer I'm looking for is something similar to this? > > > > Any thoughts or suggestions are really appreciated > > > > Thank you, > > Todd > > > > _______________________________________________ > > Radiant mailing list > > Post: Radiant@lists.radiantcms.org > > Search: http://radiantcms.org/mailing-list/search/ > > Site: http://lists.radiantcms.org/mailman/listinfo/radiant > > _______________________________________________ > Radiant mailing list > Post: Radiant@lists.radiantcms.org > Search: http://radiantcms.org/mailing-list/search/ > Site: http://lists.radiantcms.org/mailman/listinfo/radiant > _______________________________________________ Radiant mailing list Post: Radiant@lists.radiantcms.org Search: http://radiantcms.org/mailing-list/search/ Site: http://lists.radiantcms.org/mailman/listinfo/radiant