Author: jacob
Date: 2007-02-26 00:21:24 -0600 (Mon, 26 Feb 2007)
New Revision: 4598

Modified:
   django/trunk/django/db/models/base.py
Log:
Cleaned up comments from [4597] to be a bit more clear.

Modified: django/trunk/django/db/models/base.py
===================================================================
--- django/trunk/django/db/models/base.py       2007-02-26 06:16:19 UTC (rev 
4597)
+++ django/trunk/django/db/models/base.py       2007-02-26 06:21:24 UTC (rev 
4598)
@@ -91,32 +91,35 @@
 
     def __init__(self, *args, **kwargs):
         dispatcher.send(signal=signals.pre_init, sender=self.__class__, 
args=args, kwargs=kwargs)
-        # there is a rather weird disparity here; if kwargs, it's set, then 
args overrides it.
-        # should be one or the other, don't duplicate the work
-        # the reason for the kwargs check is that standard iterator passes in 
by args, literally,
-        # the row- with this check, instantiation for iteration is 33% faster.
+        
+        # There is a rather weird disparity here; if kwargs, it's set, then 
args
+        # overrides it. It should be one or the other; don't duplicate the 
work 
+        # The reason for the kwargs check is that standard iterator passes in 
by
+        # args, and nstantiation for iteration is 33% faster.
         args_len = len(args)
         if args_len > len(self._meta.fields):
-            # daft, but matches old exception sans the err msg.
-            raise IndexError("number of args exceeds number of fields")
+            # Daft, but matches old exception sans the err msg.
+            raise IndexError("Number of args exceeds number of fields")
 
         fields_iter = iter(self._meta.fields)
         if not kwargs:
-            # ordering of the izip calls matter- izip throws StopIteration 
when an iter throws it
-            # meaning, if the first iter throws it, the second is *not* 
consumed from
-            # we rely on this, thus don't change the order without changing 
the logic.
+            # The ordering of the izip calls matter - izip throws StopIteration
+            # when an iter throws it. So if the first iter throws it, the 
second
+            # is *not* consumed. We rely on this, so don't change the order
+            # without changing the logic.
             for val, field in izip(args, fields_iter):
                 setattr(self, field.attname, val)
         else:
-            # slower...
+            # Slower, kwargs-ready version.
             for val, field in izip(args, fields_iter):
                 setattr(self, field.attname, val)
                 kwargs.pop(field.name, None)
-                # maintain compatibility with existing calls, daft as it is.
+                # Maintain compatibility with existing calls.
                 if isinstance(field.rel, ManyToOneRel):
                     kwargs.pop(field.attname, None)
         
-        # now we're left with the unprocessed fields that *must* come from 
keywords, or default.
+        # Now we're left with the unprocessed fields that *must* come from
+        # keywords, or default.
         
         for field in fields_iter:
             if kwargs:
@@ -131,8 +134,8 @@
                         except KeyError:
                             val = field.get_default()
                     else:
-                        # Object instance was passed in.
-                        # Special case: You can pass in "None" for related 
objects if it's allowed.
+                        # Object instance was passed in. Special case: You can
+                        # pass in "None" for related objects if it's allowed.
                         if rel_obj is None and field.null:
                             val = None
                         else:


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-updates?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to