def do_get_or_create_calendar_for_object(parser, token):
contents = token.split_contents()
if len(contents) > 2:
obj = contents[1]
if 'by' in contents:
by_index = contents.index('by')
distinction = contents[by_index + 1]
else:
distinction = None
if 'named' in contents:
named_index = contents.index('named')
name = contents[named_index + 1]
if name[0] == name[-1]:
name = name[1:-1]
else:
name = None
if 'as' in contents:
as_index = contents.index('as')
context_var = contents[as_index + 1]
else:
raise template.TemplateSyntaxError("%r tag requires an a context variable: %r <content_object> [named <calendar name>] [by <distinction>] as <context_var>" % (token.split_contents()[0], token.split_contents()[0]))
else:
raise template.TemplateSyntaxError("%r tag follows form %r <content_object> [named <calendar name>] [by <distinction>] as <context_var>" % (token.split_contents()[0], token.split_contents()[0]))
return CreateCalendarNode(obj, distinction, context_var, name)
评论列表
文章目录