On 4/20/07, Oliver Baltzer <[EMAIL PROTECTED]> wrote:
> Raphael Bauduin wrote:
> > is there a way to select one specific child, in contrast to iterating
> > over all of them?
> > Something like <children:each slug="child-slug"> or <child 
> > slug="child-slug">.
>
> I have made a little patch for that to find a URL locally relative to
> the current page:
>
> --- standard_tags.rb    (revision 363)
> +++ standard_tags.rb    (working copy)
> @@ -396,9 +398,12 @@
>     }
>     tag 'find' do |tag|
>       if url = tag.attr['url']
> -      if found = Page.find_by_url(tag.attr['url'])
> +      if url[0..0] != "/" and found = Content.find(:first, :conditions
> => ["slug = ? AND parent_id = ?", url, tag.locals.page.id])
>           tag.locals.page = found
>           tag.expand
> +      elsif found = Page.find_by_url(tag.attr['url'])
> +        tag.locals.page = found
> +        tag.expand
>         end
>       else
>         raise TagError.new("`find' tag must contain `url' attribute")
>
> You just use it like find: <r:find url="slug">...</r:find>


Exactly what I needed!

Will this patch be applied to the svn repo?

Thanks

Raph


>
> Cheers,
> Oliver
> _______________________________________________
> Radiant mailing list
> Post:   [email protected]
> Search: http://radiantcms.org/mailing-list/search/
> Site:   http://lists.radiantcms.org/mailman/listinfo/radiant
>


-- 
Web database: http://www.myowndb.com
Free Software Developers Meeting: http://www.fosdem.org
_______________________________________________
Radiant mailing list
Post:   [email protected]
Search: http://radiantcms.org/mailing-list/search/
Site:   http://lists.radiantcms.org/mailman/listinfo/radiant

Reply via email to