You are here: Re: [SMARTY] Seperation of Logic and Presentation « Smarty Templates Posts « IT news, forums, messages
Re: [SMARTY] Seperation of Logic and Presentation

Posted by Evan Wagner on 07/29/05 21:03

That's an interesting method. I like all my logic/functions in one
file. I hate dealing with a bunch of files. I do see an advantage to
having multiple template files because it would allow me to edit
things faster.

Once again this brings up a question of how to handle <head> only
elements that would go into the script before <body> where you would
typically include a page into a template. I know you can declare
another <head> but that's not going to be very good in the eyes of a
validator script.

Maybe two templates per pages. One for head and one for body. I hate
repeating code lol

On 7/29/05, Jonathan Villa <jvilla@innovativesource.net> wrote:
>
> Personally, I have 2 files for every viewable file... the .php file which contains
> all of my logic for that action/page and the template (.tpl) which renders my page.
> the .php page does the neccessary $smarty->assign() or $smarty->register_object,
> etc...
>
> I like this method because my pages don't get consumed with code/logic... the
> code/logic on the page is specific for the action... and the .tpl only renders...
>
>
>
>
>
>
> -Jonathan
>
> <quote who="Evan Wagner">
> > I've been using Smarty for a couple years now. Recently I've
> > questioned my method of separating Logic and Presentation and have
> > come up with two ways to solve it.
> >
> > Current Setup:
> >
> > 1 Parser file: index.php (Calls upon functions to run for pages via
> > _GET variables)
> >
> > 1 Functions file: This file contains all functions used in the application
> >
> > 1 template file: index.tpl in the templates directory. This template
> > file contains logic within itself such as {if $smarty.get.action
> > =="page"} Do Page {/if}
> >
> > This current situation doesn't seem pragmatic to me.
> >
> > ALTERNATIVES:
> >
> > Alternative 1:
> >
> > 1 Parser file: index.php for example to handle the different _GET
> > variables and tell smarty to parse a different template file for each
> > _GET page.
> >
> > 1 Functions File: Contains all functions used in application
> >
> > Numerous Template Files: The parser file will call upon
> > templates/page.tpl as defined in the parser file and for consistency
> > of layout I would use {include header.tpl} and {include footer.tpl} in
> > each page. This reduces the amount of logic in the template file and
> > reduces size of template file.
> >
> > Alternative 2:
> >
> > 1 Parser file: index.php will handle all the _GET page logic to call
> > upon correct functions via the different _GET variables.
> >
> > 1 Function file: Contains all functions of application
> >
> > 1 Primary layout template that will have logic in if such as this:
> > {if $smarty.get.action =="page"} {include page.tpl} {/if}
> > This still includes logic but reduces the complexity of the template
> > by minimizing visible code.
> >
> >
> > OVERVIEW:
> >
> > I theory I think Alternative1 is better than Alternative2 because it
> > reduces the logic within the template. Basically keeps your template
> > from doing as much logic as it's better to separate your logic and
> > presentation.
> >
> > What do you guys think?
> >
> > --
> > Smarty General Mailing List (http://smarty.php.net/)
> > To unsubscribe, visit: http://www.php.net/unsub.php
> >
> >
>
> --
> Smarty General Mailing List (http://smarty.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация