zoom.fill module¶
fills templates
-
zoom.fill.dzfill(text, callback)¶ fill a tag in the <dz: style
-
zoom.fill.fill(text, callback)¶ fill a tag in the double handlebars style
>>> def filler(name, *args, **kwargs): ... if name == 'name': ... name = kwargs.get('language')=='french' and 'Jacques' or 'James' ... if 'upper' in args: ... return name.upper() ... elif 'lower' in args: ... return name.lower() ... else: ... return name >>> fill('Hello {{name}}!', filler) 'Hello James!' >>> fill('Hello {{name language="french"}}!', filler) 'Hello Jacques!' >>> fill('Hello {{name upper}}!', filler) 'Hello JAMES!' >>> fill('Hello {{name lower language="french"}}!', filler) 'Hello jacques!' >>> fill('Hello {{name lower language=french}}!', filler) 'Hello jacques!' >>> fill('Hello {{name}}!', lambda a: None ) 'Hello {{name}}!'
>>> values = {} >>> fill('Hello {{name}}!', values.get ) 'Hello {{name}}!' >>> fill('Hello {{name "World"}}!', values.get ) 'Hello World!' >>> values['name'] = 'Pat' >>> fill('Hello {{name "World"}}!', values.get ) 'Hello Pat!' >>> del values['name'] >>> fill('Hello{{name ""}}!', values.get ) 'Hello!'