Thanks for the detailed explanation Alberto! I understand now! Maybe you can ask on the pylons list for a Mako guy ?
On 6/28/07, Alberto Valverde <[EMAIL PROTECTED]> wrote: > > > > On Jun 27, 2007, at 8:00 PM, Noah Gift wrote: > > > How will the template play into the toscawidget design. Ideally, a > > widget could be written and used without the template language > > being involved, is this always the case? If not there will not be > > a 100% toscawidget API between Pylons and Turbogears as it is > > Genshi vs Mako > > Widgets themselves don't know anything about their template. The just > populate a dict and push it to the EngineManager, which, based on the > widget's engine_name and template attributes, determine which > engine'template to rebder that dict with. > > This means that as long as the templates are equivalent (produce > roughly the same html output), then engines can be swapped freely. > > For example, this is twForms TextField's code: > > class TextField(InputField): > """A text field""" > params = ["size", "max_size"] > size__doc = "The size of the text field." > size__doc = "The maximum size of the field" > type = "text" > def update_params(self,d): > super(TextField, self).update_params(d) > self.update_attrs(d, "size", "max_size") > > (template is inheritted from InputField) > > and this is the (genshi) template: > > <input xmlns="http://www.w3.org/1999/xhtml" > xmlns:py="http://genshi.edgewall.org/" > type="${type}" name="${name}" class="${css_class}" id="${id}" > value="${value}" > py:attrs="attrs" /> > > To make a textfield that used Mako you'll just need to make a mako > equivalent template for the above and stick it into a TextField > subclass: > > class MakoTextField(TextField): > engine = "mako:path.to.template" > > I've already mentioned this in TW's mailing list but it's worth > repeating: > > I'm open to contrubutions for Mako equivalent templates to bundle > them with twForms. That will allow me to remove the Genshi dependency > and provide both mako and genshi as extras_requires so users could > choose. > > Alberto > > > > -- http://www.blog.noahgift.com --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "TurboGears" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/turbogears?hl=en -~----------~----~----~----~------~----~------~--~---

