Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling

Re: Re: html template in a perl script

by thens (Scribe)
on Sep 21, 2003 at 11:53 UTC ( #292981=note: print w/replies, xml ) Need Help??

in reply to Re: html template in a perl script
in thread html template in a perl script

Although I have used this trick for very simple scripts I find it a dangerous concept for general purpose use at it 're-integrates' the Perl and HTML, albeit in a more maintainable form than using or just using HERE documents.

What does that mean ? I dont know how separating code and html will be dangerous.

I have successfully used templates for my smaller scripts. There has been times when I had to dump a concise text report or a long html report. I could do that by just switching the templates, without the core part of the script having to bother what kind of report we are going to generate. I thought templates are a boon when doing that. There is also an article in The Perl Review Separating Code, Presentation, and Configuration that deals with this in detail.


Replies are listed 'Best First'.
3Re: html template in a perl script
by jeffa (Bishop) on Sep 21, 2003 at 16:04 UTC
    I can't speak for jdtoronto, but i am pretty sure that he was talking about keeping the HTML and Perl seperate, but in the same text file - i.e., put the template in the DATA section. I agree that this is nice for small quickies, but for anything serious, you should go ahead a seperate the code and template into two (or more) text files.

    So then the question is (again) - why not put the code and template in the same text file? Because you will most likely end up having to seperate them in the long run when scalability rears it's ugly head. (please see 3Re: HTML::Template - complex sites for a technique for dealing with a more complex template structure.)


    (the triplet paradiddle with high-hat)
      You got me!

      I should perhaps explain that some time back I 'inherited' an application of about 50,000 lines of Perl which has all the HTML ( probably 60 or so pages ) all in the Perl as HERE doc's. It is a nightmare to maintain. In fact, it has become such a nightmare that I will shortly be starting a complete re-write where strict demarkation will be enforced, Perl for the programme, separate config system, HTML templates for structure and CSS docs for the styling.

      Hopefully that way I can keep from being gotcha'd all the time as I am now.


Re: Re: Re: html template in a perl script
by jdtoronto (Prior) on Sep 22, 2003 at 03:52 UTC
    Well, it is dangerous in the sense that it is only, IMHO, a partial separation of Perl and HTML. As a pragmatic point I consider that the programme and the presentation should 'always be separated when it is reasonably possible to do so'.

    The viewpoint I was hoping to express here is that if this technique works for you, then use it. But beware, it is only a half measure and wilst I would consider it appropriate for small or simple applications. I think the original question included a remark about the writer preparing some scripts for a friend where a simple script and a single template were involved. As a method of packaging the script and template where the author is likely to be the one modifying both parts then it might be a pragmatically acceptable alternative.


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://292981]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (3)
As of 2019-10-16 21:54 GMT
Find Nodes?
    Voting Booth?