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

Re^2: modules, auto generated code and content management

by dimar (Curate)
on Dec 06, 2005 at 20:56 UTC ( #514636=note: print w/replies, xml ) Need Help??

in reply to Re: modules, auto generated code and content management
in thread modules, auto generated code and content management

The goal is to reduce dependencies on templating systems. They are nice, but they don't do anything perl can't do alone. Moreover, Perl, Mason and TT all have easy solutions to Problem1, but that still does not address Problem2.

There needs to be a way to output the content of the 'body' variable without having the 'inherited' portions interpolated. I was hoping for insight on how to address this issue, or at least workarounds from others who have encountered this specific issue before, assuming there are others.

As far as I can discern, the only solution (be it TT, Mason, or whatever else) would be to convert the module code into some 'intermediate' format (XML, YAML, some other 'markup') and then 'scrape' the content out that way, thus avoiding interpolation of interspersed variables in the text

  • Comment on Re^2: modules, auto generated code and content management

Replies are listed 'Best First'.
Re^3: modules, auto generated code and content management
by Tanktalus (Canon) on Dec 06, 2005 at 22:23 UTC

    You're absolutely right - templating systems don't do anything that perl can't do without them. Well, not quite. Templating systems usually can offer a much more simplified view of the data. Content, with no logic. That's what templating is for.

    How I generally approach this problem is to put my content in templates, and put the retrieval of data in the code. In your case, I would use the "include" facilities of most templating systems to put the common header and footer into header and footer templates:

    <tmpl_include header.tmpl> Dear <tmpl_var fname> <tmpl_var lname>, It has come to our computer's attention that your account is 30 days past due. You don't really want our computer mad at you - last time it was mad at me, it conveniently lost half my email and mangled the crap out of my automated scripts. With you, I predict adding some zeros somewhere in the middle of your account balance. Please pay up before the computer sends a hitman to your house. Thanks, HAL <tmpl_include footer.tmpl>

    I'm really not sure what you mean by "republish" or "auto-generate perl" modes. Something tells me that you're looking for extra work with those.

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (4)
As of 2023-10-04 05:56 GMT
Find Nodes?
    Voting Booth?

    No recent polls found