From: Ruby Baby [mailto:ruby@hitmedia.com]
it seems smarter to shift your focus from “HTML templates to
put my Ruby in” to “Ruby class that puts out HTML”.Templates are templates, there should be no logic
in them; they are only presentation.Presentation DEFINITELY needs logic, for anything beyond the
stupidest “put a variable on a page” website.The differences is that a templating system should only have
PRESENTATION LOGIC, but no business-logic.The presentation having logic is a big part of making an
easy-to-use responsive website!For example, my site is http://www.cdbaby.com
The presentation/display is constantly changing based on the
contents. It is deciding how it wants to present the business
information given to it.If an item is on sale, the designer has decided to put a big
yellow flag in the top-right corner. If it is one hour until
we close, the designer has decided to change the color of the
page to let the customer know we’re almost closing, and they
should hurry. The designer has decided to capitalize the
artist names, and lowercase the album titles.All of this is presentation logic.
I’d take some issue with this. Sort of. The colour of the flag is (should
be) in the realms of the designer, but the fact that it changes is in the
realms of the business - “closing” is a concept rooted in your business, not
in your web frontend. The “1 hour” rule is also a piece of business logic.
The line is softly drawn in wet sand on a very wet beach in between waves -
but I don’t think there is a lot of “presentation logic” that is not
governed by business rules. So very little logic should exist on the
presentation side of templates.
(IMO).
David Naseby
http://homepages.ihug.com.au/~naseby/