Use a more explicit check for whether these ids are None.

This commit is contained in:
Alex Gaynor 2013-07-08 12:44:17 +10:00
parent 43073dbd76
commit 6bdc47f75c
1 changed files with 2 additions and 2 deletions

View File

@ -66,7 +66,7 @@ class GenericForeignKey(six.with_metaclass(RenameGenericForeignKeyMethods)):
if obj is not None: if obj is not None:
return ContentType.objects.db_manager(obj._state.db).get_for_model( return ContentType.objects.db_manager(obj._state.db).get_for_model(
obj, for_concrete_model=self.for_concrete_model) obj, for_concrete_model=self.for_concrete_model)
elif id: elif id is not None:
return ContentType.objects.db_manager(using).get_for_id(id) return ContentType.objects.db_manager(using).get_for_id(id)
else: else:
# This should never happen. I love comments like this, don't you? # This should never happen. I love comments like this, don't you?
@ -130,7 +130,7 @@ class GenericForeignKey(six.with_metaclass(RenameGenericForeignKeyMethods)):
# performance when dealing with GFKs in loops and such. # performance when dealing with GFKs in loops and such.
f = self.model._meta.get_field(self.ct_field) f = self.model._meta.get_field(self.ct_field)
ct_id = getattr(instance, f.get_attname(), None) ct_id = getattr(instance, f.get_attname(), None)
if ct_id: if ct_id is not None:
ct = self.get_content_type(id=ct_id, using=instance._state.db) ct = self.get_content_type(id=ct_id, using=instance._state.db)
try: try:
rel_obj = ct.get_object_for_this_type(pk=getattr(instance, self.fk_field)) rel_obj = ct.get_object_for_this_type(pk=getattr(instance, self.fk_field))