Index: django/core/management/__init__.py
===================================================================
--- django/core/management/__init__.py	(revision 6718)
+++ django/core/management/__init__.py	(working copy)
@@ -146,6 +146,35 @@
     """
     def error(self, msg):
         pass
+    
+    def _process_args(self, largs, rargs, values):
+        """
+        Overrides OptionParser._process_args to exclusively handle default
+        options and ignore args and other options. 
+        
+        This overrides the behavior of the super class, which stop parsing 
+        at the first unrecognized option.
+        """
+        while rargs:
+            arg = rargs[0]
+            try:
+                if arg[0:2] == "--" and len(arg) > 2:
+                    # process a single long option (possibly with value(s))
+                    # the superclass code pops the arg off rargs
+                    self._process_long_opt(rargs, values)
+                elif arg[:1] == "-" and len(arg) > 1:
+                    # process a cluster of short options (possibly with
+                    # value(s) for the last one only)
+                    # the superclass code pops the arg off rargs
+                    self._process_short_opts(rargs, values)
+                else:
+                    # it's either a non-default option or an arg
+                    # either way, add it to the args list so we can keep
+                    # dealing with options
+                    del rargs[0]
+                    raise error
+            except:
+                largs.append(arg)
 
 class ManagementUtility(object):
     """
Index: tests/regressiontests/management/__init__.py
===================================================================
Index: tests/regressiontests/management/tests.py
===================================================================
--- tests/regressiontests/management/tests.py	(revision 0)
+++ tests/regressiontests/management/tests.py	(revision 0)
@@ -0,0 +1,45 @@
+"""
+# Tests for LaxOptionParser in core.management
+
+# The handling of command line options in the management command requires a 2 
+# pass approach; # --settings and --pythonpath must be extracted on the first 
+# pass, but on the second pass, --settings and --pythonpath can be ignored.
+# The LaxOptionParser implements the first pass, ignoring any option it 
+# doesn't know about, and providing a list of arguments filtered of any 
+# --settings or --pythonpath values. Any erroneous settings will be caught by 
+# the second pass.
+
+>>> from django.core.management import LaxOptionParser, get_version
+>>> from django.core.management.base import BaseCommand
+>>> parser = LaxOptionParser(version=get_version(), option_list=BaseCommand.option_list)
+
+# Invoke a command with options after the settings and python path
+>>> options, args = parser.parse_args('django-admin.py command --settings=settingsmodule --pythonpath=/home/user/django-dir --option'.split())
+>>> print options
+{'pythonpath': '/home/user/django-dir', 'settings': 'settingsmodule'}
+>>> args
+['django-admin.py', 'command', '--option']
+
+# Invoke a command with options between the settings and python path
+>>> options, args = parser.parse_args('django-admin.py command --settings=settingsmodule --option --pythonpath=/home/user/django-dir'.split())
+>>> print options
+{'pythonpath': '/home/user/django-dir', 'settings': 'settingsmodule'}
+>>> args
+['django-admin.py', 'command', '--option']
+
+# Invoke a command with options between the python path and settings
+>>> options, args = parser.parse_args('django-admin.py command --pythonpath=/home/user/django-dir --option --settings=settingsmodule '.split())
+>>> print options
+{'pythonpath': '/home/user/django-dir', 'settings': 'settingsmodule'}
+>>> args
+['django-admin.py', 'command', '--option']
+
+# Invoke a command with options before the settings and python path
+>>> options, args = parser.parse_args('django-admin.py command --option --settings=settingsmodule --pythonpath=/home/user/django-dir'.split())
+>>> print options
+{'pythonpath': '/home/user/django-dir', 'settings': 'settingsmodule'}
+>>> args
+['django-admin.py', 'command', '--option']
+
+
+"""
\ No newline at end of file
Index: tests/regressiontests/management/models.py
===================================================================
