def render_field(field,template,kwargs, layout): inject_validation_tags(field) process = lambda a: camel_to_hyphen( re.sub( r'widget|field', '',a.__class__.__name__) ).lower() attrs = make_attrs(kwargs) field_class_name = process(field.field) widget = field.field.widget widget_class_name = process(widget) context = { 'layout':layout, 'field':field, 'field_name': field.name, 'field_class':field_class_name, 'widget':widget, 'widget_class':widget_class_name, 'attributes':attrs } if callable(template): html = template(field, context) else: template = template or "bolts/field.jinja" html = render_to_string(template, context) return html
def template_to_string(*args,**kwargs): return render_to_string(*args,**kwargs)