Can someone help me, plz? I have two block tags that take an argument and then sets a variable in the template. The two block tags are inside the template "for loop" tags, one after another.
On Oct 18, 3:00 pm, johnny <[EMAIL PROTECTED]> wrote: > I have templatetags/custom_format.py, and in it I have > do_custom_format_string1, do_custom_format_string2. I placed the > template tags > one after another, insdie my html page like this: > > {% for a_object in object_list %} > {% load custom_format %} > {% custom_format_string1 a_object.3 %} > <td>{{split_string_data1}}</td> > {% end_custom_format_string1 %) > > {% custom_format_string2 a_object.4 %} > <td>{{split_string_data2}}</td> > {% end_custom_format_string2 %) > {% endfor %} > > custom_format.py: > > from django import template > #from django.template import Variable > from django.template import resolve_variable > register = template.Library() > > @register.tag(name="custom_format_sting1") > def do_custom_format_sting1(parser, token): > nodelist = parser.parse(('end_custom_format_sting1',)) > tag_name, data_to_split = token.split_contents() > parser.delete_first_token() > return CustomFormatString1Node(nodelist, data_to_split) > > class CustomFormatString1Node(template.Node): > def __init__(self, nodelist, data_to_split): > self.nodelist = nodelist > self.data_to_split = data_to_split > def render(self, context): > actual_data = resolve_variable(self.data_to_split, context) > datalist = actual_data.split(',') > context['split_string_data1'] = "".join(datalist) > output = self.nodelist.render(context) > return output.custom_format_sting1() > > @register.tag(name="custom_format_sting2") > def do_custom_format_sting2(parser, token): > nodelist = parser.parse(('end_custom_format_sting2',)) > tag_name, data_to_split = token.split_contents() > parser.delete_first_token() > return CustomFormatString2Node(nodelist, data_to_split) > > class CustomFormatString2Node(template.Node): > def __init__(self, nodelist, data_to_split): > self.nodelist = nodelist > self.data_to_split = data_to_split > def render(self, context): > actual_data = resolve_variable(self.data_to_split, context) > datalist = actual_data.split('-') > context['split_string_data2'] = "".join(datalist) > output = self.nodelist.render(context) > return output.custom_format_sting2() > > Error I am getting: > > Exception Type: TemplateSyntaxError > Exception Value: Invalid block tag: 'custom_format_string1' > > error at html file: > {% custom_format_string1 a_object.3 %} --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---