Re: delegage or target
That's a great summary. Nice work. Geoff On 26/03/2013, at 12:15 AM, Bård Magnus Kvalheim wrote: Hi Ken. I think what you refer to as the target= approach is html frames and you can certainly do that with tapestry or any other framework. Here is my understanding of Tapestry 'best practices'. *Master layouts* In tapestry you can create master layouts. A master layout is a page template that contains header, footer sidebars etc.. and defines a special region to insert the specific page content. In a tapestry component this is specified by; t:body/ http://tapestry.apache.org/layout-component.html The other typical php/jsp way of doing things is to use includes for header, footer sidebar - and that works, but consider having 30+ pages than it's a lot of work to make modifications - like moving sidebar from left to right hand side. Master templates is the way to go IMO. Inside your master template/layout - if you need to display different content at times you have a few options. (A layout is 'just' another component and can be as simple/advanced as you'd like. ) *Conditional if's* use if statements to conditionally show the content. *Blocks* define blocks within layout template and have logic to display/delegate to what you need. *Template inheritance* Should not be overused, but quite useful feature. http://tapestry.apache.org/component-templates.html#ComponentTemplates-TemplateInheritance. Can for example have master templates; simple no sidebar, standard with sidebar (which inherit from the simple) *Blocks as parameters* define block parameters to layout component. Say you have a sidebar where you want to display different content depending on what page you're on then give it as parameter. (From the page) http://tapestry.apache.org/component-templates.html#ComponentTemplates-parameternamespaces *Reusable components* If you have pieces of markup and/or logic that is reusable, then it's easy and useful to make it a component with own tml / java/ + resources files. Think this is what you refer to as whole TML file I use all of these approaches - they are all good but think only you know when it's appropriate to use one over the others. I would definitely start with a layout though. Last time I checked the maven quickstart also included examples for blocks and master layout/components. cheers Magnus On Mon, Mar 25, 2013 at 2:24 AM, Ken in Nashua kcola...@live.com wrote: Well it seems there is a concept called blocks... And this construct has support for active block. This seems like it is what I am seeking hopefully. And the delegate component is the guy that operates and manipulates and detects? - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: delegage or target
I would also check out Dynamic. http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/corelib/components/Dynamic.html It's easy enough to fetch its template from a database of other source outside the project to provide per user/company etc customization of a layout. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: delegage or target
On Sun, 24 Mar 2013 23:09:50 -0300, Ken in Nashua kcola...@live.com wrote: Ok... for instance I want to just pull up a tml file and start editing the heck out of it... You can't do that, at least not easily. say footer.tml and inside my layout... t:delegate to=footer.tml / Is this legal ? or reasonable practice ? No. No. Just declare blocks and use the Delegate component to render them. -- Thiago H. de Paula Figueiredo - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: delegage or target
Hi Ken. I think what you refer to as the target= approach is html frames and you can certainly do that with tapestry or any other framework. Here is my understanding of Tapestry 'best practices'. *Master layouts* In tapestry you can create master layouts. A master layout is a page template that contains header, footer sidebars etc.. and defines a special region to insert the specific page content. In a tapestry component this is specified by; t:body/ http://tapestry.apache.org/layout-component.html The other typical php/jsp way of doing things is to use includes for header, footer sidebar - and that works, but consider having 30+ pages than it's a lot of work to make modifications - like moving sidebar from left to right hand side. Master templates is the way to go IMO. Inside your master template/layout - if you need to display different content at times you have a few options. (A layout is 'just' another component and can be as simple/advanced as you'd like. ) *Conditional if's* use if statements to conditionally show the content. *Blocks* define blocks within layout template and have logic to display/delegate to what you need. *Template inheritance* Should not be overused, but quite useful feature. http://tapestry.apache.org/component-templates.html#ComponentTemplates-TemplateInheritance. Can for example have master templates; simple no sidebar, standard with sidebar (which inherit from the simple) *Blocks as parameters* define block parameters to layout component. Say you have a sidebar where you want to display different content depending on what page you're on then give it as parameter. (From the page) http://tapestry.apache.org/component-templates.html#ComponentTemplates-parameternamespaces *Reusable components* If you have pieces of markup and/or logic that is reusable, then it's easy and useful to make it a component with own tml / java/ + resources files. Think this is what you refer to as whole TML file I use all of these approaches - they are all good but think only you know when it's appropriate to use one over the others. I would definitely start with a layout though. Last time I checked the maven quickstart also included examples for blocks and master layout/components. cheers Magnus On Mon, Mar 25, 2013 at 2:24 AM, Ken in Nashua kcola...@live.com wrote: Well it seems there is a concept called blocks... And this construct has support for active block. This seems like it is what I am seeking hopefully. And the delegate component is the guy that operates and manipulates and detects?
delegage or target
Hi Folks, back in my struts days, there was a target= syntax that allowed the rendering of specific logic to land within a specific area of a page... or a frameset? I am not using frames... just divs and spans in a typical tapestry layout. header menu nav | body footer Is there a tapestry component or language construct that will permit me to specify a whole TML file targeted to a specific layout block on a page? I have a bunch of pages to do (footer.tml, help.tml, contact.tml, rights.tml, etc...) and want to target them to specific DIV id'd parts of my page. Just looking for the best practice or general practice. Any tips are appreciated. Thanks
RE: delegage or target
Well it seems there is a concept called blocks... And this construct has support for active block. This seems like it is what I am seeking hopefully. And the delegate component is the guy that operates and manipulates and detects?
RE: delegage or target
Ok... for instance I want to just pull up a tml file and start editing the heck out of it... say footer.tml and inside my layout... t:delegate to=footer.tml / Is this legal ? or reasonable practice ? I am trying not to worry about the in betweens (or at least minimize and simplify them)... I just want to edit my files and honk them all the layout modularly.