velocity-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nathan Bubna <nbu...@gmail.com>
Subject Re: Simple list of all methods, properties, variables available to templates?
Date Wed, 13 Feb 2013 16:08:53 GMT
Yes, if the context has a reference to itself: context.put("context", context);
Then you can #foreach( $key in $context.keySet() ) $key = $context.get($key)#end
And if you add something like the ClassTool from the VelocityTools
project, then you can avoid the nastiness of trying to use the
reflection API within a template and explore what
$class.inspect($context.get($key)) gives you.

http://velocity.apache.org/tools/devel/javadoc/org/apache/velocity/tools/generic/ClassTool.html

But again, you need to have access to the VelocityContext being used
to merge the templates.  I don't know if your CMS is using
VelocityTools, but all of this gets much easier if it is using Tools
2.  There's even a ContextTool:
http://velocity.apache.org/tools/devel/javadoc/org/apache/velocity/tools/generic/ContextTool.html

On Tue, Feb 12, 2013 at 8:10 PM, ANS Developer Team <dev@answeb.org> wrote:
> Thanks, is it possible to do that from within a Velocity template?
>
>
> On Tue, Feb 12, 2013 at 2:09 PM, Sergiu Dumitriu
> <sergiu.dumitriu@gmail.com>wrote:
>
>> On 02/12/2013 12:17 PM, ANS Developer Team wrote:
>> > Ah thanks, it's pretty sparse, hence why I'm asking here.  Much
>> > appreciated, will figure it out from source.
>>
>> If you can get your hands on the current VelocityContext, then you could
>> list all the properties it contains (it extends Map).
>>
>> >
>> > On Tue, Feb 12, 2013 at 12:42 AM, Nathan Bubna <nbubna@gmail.com> wrote:
>> >
>> >> Velocity doesn't provide anything but the syntax.  You will have to
>> >> seek documentation from Vosao CMS.
>> >>
>> >> On Mon, Feb 11, 2013 at 6:57 PM, ANS Developer Team <dev@answeb.org>
>> >> wrote:
>> >>> Hi all, I'm trying to find a list all of the above that can be used
in
>> a
>> >>> template, preferably with a brief description of what it does (but
>> that's
>> >>> not entirely necessary).
>> >>>
>> >>> I'm building site using the Velocity-based Vosao CMS, and have no idea
>> >> what
>> >>> what methods, properties, and variables are available to me except the
>> >>> sparse few used in the example Blog app.
>> >>>
>> >>> For example there's a $page.friendlyURL property, but what other
>> >> properties
>> >>> does $page have?  Having trouble finding this information.
>> >>>
>> >>> I've found the Velocity VTL Reference Guide, but that's more of a
>> syntax
>> >>> uide without a comprehensive list, and I've found the online Velocity
>> API
>> >>> docs, but that's overkill and I still can't find the $page object in
it
>> >>> (not sure what class it's in).
>> >>>
>> >>> Any help on this much appreciated!
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@velocity.apache.org
>> For additional commands, e-mail: user-help@velocity.apache.org
>>
>>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@velocity.apache.org
For additional commands, e-mail: user-help@velocity.apache.org


Mime
View raw message