Index: django/db/models/base.py
===================================================================
--- django/db/models/base.py	(revision 2747)
+++ django/db/models/base.py	(working copy)
@@ -105,6 +105,11 @@
                 else:
                     val = kwargs.pop(f.attname, f.get_default())
                     setattr(self, f.attname, val)
+            for prop in kwargs.keys():   # keys has to be a copy
+                try:
+                    if isinstance(getattr(self.__class__, prop), property):
+                        setattr(self, prop, kwargs.pop(prop))
+                except AttributeError: pass
             if kwargs:
                 raise TypeError, "'%s' is an invalid keyword argument for this function" % kwargs.keys()[0]
         for i, arg in enumerate(args):
