I need some advice pertaining to automation of dynamic Web content. In the organization I work for, we are currently working on creating and maintaining a large number of (often very complex) CGI apps. As the number and complexity of these applications grow, and as the due-dates shorten, we're exploring options of doing things a better way.

Currently we use CGI.pm and DBI, along with some methods in a "home-made" package, to generate both the content and layout of our web applications. Over the past few days, I've been reading up extensively on Template Toolkit, HTML::Template, CGI::Application, FormBuilder, etc.

Currently, I feel that the Template Toolkit may be the best option for us in regards to splitting logic from layout. I especially like the way it allows you to easily build more complex templates from smaller componenent templates. However, I'm also becoming interested in using CGI::Application to power the logic end of application development.

The main question is: what are your thoughts on the ideal combination? I know CGI:Application was built with the use of HTML::Template in mind, not Template Toolkit. However, it seems that it's probably possible to use the Toolkit with it instead. Is this a bad idea? Would it make life more complex, or easier? The point here is to create complex apps as fast as possible, and to make them as extensible and reusable as possible at the same time.

Along the lines of layout and design, I also have this question: what about using CSS and templates together? Is it a good idea to use one or the other exclusively, or would it be beneficial to use stylesheets as an extra layer of design on top of the templates?

Basically, we need to be able to make an informed decision soon, and we're still not quite sure which way to go. Any thoughts and recommendations would be VERY much appreciated.

Thank you so much!


In reply to CGI::Application, Templates, and CSS by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.