git.ithinksw.org
/
philo.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of git://github.com/melinath/philo
[philo.git]
/
templatetags
/
embed.py
diff --git
a/templatetags/embed.py
b/templatetags/embed.py
index
901e163
..
db5cea5
100644
(file)
--- a/
templatetags/embed.py
+++ b/
templatetags/embed.py
@@
-65,6
+65,9
@@
def get_embed_dict(embed_list, context):
embeds = {}
for e in embed_list:
ct = e.get_content_type(context)
embeds = {}
for e in embed_list:
ct = e.get_content_type(context)
+ if ct is None:
+ # Then the embed doesn't exist for this context.
+ continue
if ct not in embeds:
embeds[ct] = [e]
else:
if ct not in embeds:
embeds[ct] = [e]
else:
@@
-207,17
+210,13
@@
class ConstantEmbedNode(template.Node):
try:
t = context.render_context[EMBED_CONTEXT_KEY].get_embed_template(self, context)
except (KeyError, IndexError):
try:
t = context.render_context[EMBED_CONTEXT_KEY].get_embed_template(self, context)
except (KeyError, IndexError):
- if settings.TEMPLATE_DEBUG:
- raise
self.mark_rendered_for(context)
return settings.TEMPLATE_STRING_IF_INVALID
context.push()
context['embedded'] = instance
self.mark_rendered_for(context)
return settings.TEMPLATE_STRING_IF_INVALID
context.push()
context['embedded'] = instance
- kwargs = {}
for k, v in self.kwargs.items():
for k, v in self.kwargs.items():
- kwargs[k] = v.resolve(context)
- context.update(kwargs)
+ context[k] = v.resolve(context)
t_rendered = t.render(context)
context.pop()
self.mark_rendered_for(context)
t_rendered = t.render(context)
context.pop()
self.mark_rendered_for(context)
@@
-263,7
+262,10
@@
class InstanceEmbedNode(EmbedNode):
return self.instance.resolve(context)
def get_content_type(self, context):
return self.instance.resolve(context)
def get_content_type(self, context):
- return ContentType.objects.get_for_model(self.get_instance(context))
+ instance = self.get_instance(context)
+ if not instance:
+ return None
+ return ContentType.objects.get_for_model(instance)
def get_embedded(self):
def get_embedded(self):