Index: /home/ddanier/django-unique-together/django/db/models/manipulators.py
===================================================================
--- /home/ddanier/django-unique-together/django/db/models/manipulators.py	(Revision 4828)
+++ /home/ddanier/django-unique-together/django/db/models/manipulators.py	(Arbeitskopie)
@@ -294,7 +294,10 @@
             # doesn't have blank=True.
             return
         if isinstance(f.rel, ManyToOneRel):
-            kwargs['%s__pk' % f.name] = field_val
+            if field_val in ('', None) and f.null:
+                kwargs['%s__isnull' % f.name] = True
+            else:
+                kwargs['%s__pk' % f.name] = field_val
         else:
             kwargs['%s__iexact' % f.name] = field_val
     try:
