Commit Graph

60 Commits

Author SHA1 Message Date
Luke Plant 4b82421a85 Improved NoReverseMatch error message when invalid args/kwargs are passed.
Refs #8611



git-svn-id: http://code.djangoproject.com/svn/django/trunk@11482 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-09-10 11:08:16 +00:00
Russell Keith-Magee 8d48eaa064 Fixed #10061 -- Added namespacing for named URLs - most importantly, for the admin site, where the absence of this facility was causing problems. Thanks to the many people who contributed to and helped review this patch.
This change is backwards incompatible for anyone that is using the named URLs
introduced in [9739]. Any usage of the old admin_XXX names need to be modified
to use the new namespaced format; in many cases this will be as simple as a
search & replace for "admin_" -> "admin:". See the docs for more details on
the new URL names, and the namespace resolution strategy.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@11250 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-07-16 16:16:13 +00:00
Russell Keith-Magee 88da053e5e Fixed #10834 -- Corrected [11120] to ensure that there is a difference between catching a bad URL pattern and an new (no URLs) project. Thanks to Matt Welch for the report.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@11155 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-07-02 14:02:58 +00:00
Russell Keith-Magee 735309341e Fixed #10834 -- Added bucket condition to ensure that URL resolvers won't ever return None. Thanks to Chris Cahoon for the patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@11120 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-06-29 14:02:17 +00:00
Russell Keith-Magee ff166a3cdc Fixed #10065 -- Corrected an error message when an empty urlpattern object is provided. Thanks to Matthew Flanagan for the patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10385 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-04-04 06:54:56 +00:00
Gary Wilson Jr b4f5655c86 Fixed #10553 -- Corrected several uses of `URLconf` in documentation and comments, according to the Django style guide. Based on patch from rduffield.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10256 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-31 16:07:07 +00:00
Jacob Kaplan-Moss c485e236bd Fixed #8193: all dynamic imports in Django are now done correctly. I know this because Brett Cannon borrowed the time machine and brought Python 2.7's '`importlib` back for inclusion in Django. Thanks for the patch-from-the-future, Brett!
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10088 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-18 16:55:59 +00:00
Malcolm Tredinnick fb729cf1d9 Fixed #10472 -- Fixed a race condition in reverse URL resolving.
This only shows up in for reverse() (not forwards resolving), since that
path uses a globally shared resolver object. Based on a patch from
Travis Terry.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@10037 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-12 07:28:22 +00:00
Jacob Kaplan-Moss c01098e9cb In urlconfs, include() may now be used on an iterable of patterns instead of just a module string. Refs #6470 -- making the admin use a urlconf is much easier with this work done. Thanks, Alex Gaynor.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@9728 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-01-10 22:54:20 +00:00
Malcolm Tredinnick 37ee86b7ee Fixed another case of reverse URL resolving that wasn't working.
This is a similar situation to that fixed in r9087. We weren't merging
multiple levels of include() calls together correctly.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@9099 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-30 05:52:35 +00:00
Malcolm Tredinnick 15b0158e39 Fixed #9038 -- Correctly handle URL patterns with the same name (or view name),
declared independently and that differ only by argument signatures.

Patch from Russell Keith-Magee.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@9087 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-27 06:14:11 +00:00
Malcolm Tredinnick 7838493b9e Fixed #8726 -- When doing reverse URL resolving, make sure we're consistently
dealing with unicode strings throughout by promoting up from UTF-8 as necessary.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@8777 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-31 22:47:25 +00:00
Malcolm Tredinnick a63a83e5d8 A rewrite of the reverse URL parsing: the reverse() call and the "url" template tag.
This is fully backwards compatible, but it fixes a bunch of little bugs. Thanks
to SmileyChris and Ilya Semenov for some early patches in this area that were
incorporated into this change.

Fixed #2977, #4915, #6934, #7206.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@8760 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-31 11:11:20 +00:00
Jacob Kaplan-Moss a46d3ebfcc Fixed #8221: added some better `NoReverseMatch` error strings. Thanks, mrts.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8672 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-28 19:05:14 +00:00
Jacob Kaplan-Moss 3d577febc7 Fixed #7524: allow errors raised during import of a urlconf to bubble up.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8664 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-28 16:14:13 +00:00
Luke Plant 50e6928c5b Made NoReverseMatch exceptions more helpful. Thanks, mrts
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8272 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-09 18:06:51 +00:00
Malcolm Tredinnick bfcecbffd3 Changed/fixed the way Django handles SCRIPT_NAME and PATH_INFO (or
equivalents). Basically, URL resolving will only use the PATH_INFO and the
SCRIPT_NAME will be prepended by reverse() automatically. Allows for more
portable development and installation. Also exposes SCRIPT_NAME in the
HttpRequest instance.

There are a number of cases where things don't work completely transparently,
so mod_python and fastcgi users should read the relevant docs.

Fixed #285, #1516, #3414.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@8015 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-21 07:57:10 +00:00
Malcolm Tredinnick 189c704ae6 Revert [7991] - [7993]. I was committing from the wrong branch. Sorry 'bout
that, folks. :-(


git-svn-id: http://code.djangoproject.com/svn/django/trunk@7995 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-19 19:37:55 +00:00
Malcolm Tredinnick b653cdcfb2 First part of setting request.path correctly.
Still needs:
    - testing
    - docs changes
    - some way of fixing reverse().


git-svn-id: http://code.djangoproject.com/svn/django/trunk@7991 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-19 19:32:01 +00:00
Russell Keith-Magee 415bd694f9 Fixed #7521 -- Added the ability to customize ROOT_URLCONF for the duration of a TestCase. Thanks to Mark Fargas (telenieko) for his work on this patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7805 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-06-30 12:34:29 +00:00
Adrian Holovaty e073861332 Fixed #6831 -- Reverse URL resolver now replaces backslashes correctly. Thanks, Bastian Kleineidam
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7660 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-06-16 04:16:21 +00:00
Malcolm Tredinnick a1496b054a Fixed #5732 -- Catch all possible errors when importing a URLConf file. This
leads to error messages that contain the name of the problem file (useful when
the problem is part of an include() import).


git-svn-id: http://code.djangoproject.com/svn/django/trunk@6584 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-10-21 17:51:06 +00:00
Malcolm Tredinnick 53e3f76d6e Fixed #4839 -- Added __repr__ methods to URL classes that show the pattern they
contain. Thanks, Thomas Güttler.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@5681 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-07-13 09:14:51 +00:00
Malcolm Tredinnick cc1a4f031c Fixed #4823 -- Fixed a Python 2.3 incompatibility from [5636] (it was even
demonstrated by existing tests, so I really screwed this up).


git-svn-id: http://code.djangoproject.com/svn/django/trunk@5641 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-07-10 12:02:06 +00:00
Malcolm Tredinnick 5a32b3ac2c Fixed #4798-- Made sure that function keyword arguments are strings (for the
keywords themselves) when using Unicode URL patterns.



git-svn-id: http://code.djangoproject.com/svn/django/trunk@5636 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-07-08 11:22:53 +00:00
Malcolm Tredinnick b6812f2d9d Fixed reverse URL lookup using functions when the original URL pattern was a
string. This is now just as fragile as it was prior to [5609], but works in a
few cases that people were relying on, apparently.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@5632 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-07-08 00:39:32 +00:00
Malcolm Tredinnick 8c85ddf306 Fixed #4772 -- Fixed reverse URL creation to work with non-ASCII arguments.
Also included a test for non-ASCII strings in URL patterns, although that
already worked correctly.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@5630 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-07-07 18:24:27 +00:00
Malcolm Tredinnick 953badbea5 Merged Unicode branch into trunk (r4952:5608). This should be fully
backwards compatible for all practical purposes.

Fixed #2391, #2489, #2996, #3322, #3344, #3370, #3406, #3432, #3454, #3492, #3582, #3690, #3878, #3891, #3937, #4039, #4141, #4227, #4286, #4291, #4300, #4452, #4702


git-svn-id: http://code.djangoproject.com/svn/django/trunk@5609 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-07-04 12:11:04 +00:00
Malcolm Tredinnick b8b9c95dca Changed reverse URL resolving to handle the case where an included file does
not have a urlpatterns attribute.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@5538 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-06-25 16:19:36 +00:00
Malcolm Tredinnick a5802b35dd Fixed #4453 -- Allow dots in URL pattern names (although the string in that case is first tried as an import path and only then falls back to being treated as a pattern).
git-svn-id: http://code.djangoproject.com/svn/django/trunk@5530 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-06-25 04:34:34 +00:00
Malcolm Tredinnick 6b88d4abd0 Fixed #4673 -- Fixed error reporting bug from [5516]. Also changed the timing
for populating the reverse cache, since that may have been happening too early.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@5520 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-06-24 09:38:30 +00:00
Malcolm Tredinnick fc20eeec47 Fixed a Python 2.3 incompatibility I overlooked in [5516].
git-svn-id: http://code.djangoproject.com/svn/django/trunk@5517 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-06-23 06:02:17 +00:00
Malcolm Tredinnick 5f5f1d913b Fixed #4566 -- Added caching speed-ups to reverse URL matching. Based on a
patch from smoo.master@gmail.com.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@5516 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-06-23 05:40:28 +00:00
Malcolm Tredinnick f85f1d077a Fixed #4129 -- Pass any prefix setting into url(...) constructions so that
prefixes work with the new syntax and strings for function names.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@5086 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-04-26 11:17:19 +00:00
Malcolm Tredinnick d882656ea3 Added the ability to name URL patterns. Helps with disambiguity reverse matches.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@4901 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-04-01 07:25:20 +00:00
Adrian Holovaty 6871a455e2 Teeny weeny optimization to RegexURLPattern.resolve()
git-svn-id: http://code.djangoproject.com/svn/django/trunk@4587 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-02-25 22:31:31 +00:00
Jacob Kaplan-Moss afb2366430 Fixed #2875: made urlresolvers.get_mod_func() deal with non-qualified callbacks better. Thanks, Matt McClanahan.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@4047 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2006-11-07 05:05:16 +00:00
Adrian Holovaty 41d11a685f Fixed #2968 -- Changed arguments to __import__ to use empty dictionary instead of empty string, for stricter compliance with Python library reference. Thanks for the patch, Yasushi Masuda
git-svn-id: http://code.djangoproject.com/svn/django/trunk@3951 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2006-10-30 20:50:27 +00:00
Jacob Kaplan-Moss aaa3411a0a Made the !NoReverseMatch exception fail silently within templates (so that model.permalink doesn't cause templates to break for a broken permalink function).
git-svn-id: http://code.djangoproject.com/svn/django/trunk@3898 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2006-10-09 23:24:48 +00:00
Adrian Holovaty 0b71ffacab Improved urlresolvers so that URLconfs can be passed objects instead of strings
git-svn-id: http://code.djangoproject.com/svn/django/trunk@3554 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2006-08-11 07:01:29 +00:00
Adrian Holovaty 1a428ec9b8 Fixed #2370 -- It's now possible to pass default URLconf arguments to include(). Added docs, as well. Thanks for the patch, martin.glueck@gmail.com
git-svn-id: http://code.djangoproject.com/svn/django/trunk@3506 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2006-08-01 02:57:08 +00:00
Adrian Holovaty 36ee8f5ad2 Added leading slash to output of core.urlresolvers.reverse(), and made 'urlconf' a keyword argument
git-svn-id: http://code.djangoproject.com/svn/django/trunk@3470 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2006-07-28 02:08:17 +00:00
Adrian Holovaty 3d02de2713 Added resolve() and reverse() helper functions to django.core.urlresolvers
git-svn-id: http://code.djangoproject.com/svn/django/trunk@3445 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2006-07-25 07:30:22 +00:00
Adrian Holovaty 2abfd5dd58 Fixed #2109 -- Convert old-style classes to new-style classes throughout Django. Thanks, Nicola Larosa
git-svn-id: http://code.djangoproject.com/svn/django/trunk@3113 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2006-06-08 05:00:13 +00:00
Adrian Holovaty bd5b35069b Fixed #2025 -- Fixed some issues with URL reversal, which still isn't ready for prime time. Thanks, medhat
git-svn-id: http://code.djangoproject.com/svn/django/trunk@3057 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2006-06-02 04:38:16 +00:00
Adrian Holovaty d9c4af6b37 Added first stab at reverse matching to urlresolvers.py
git-svn-id: http://code.djangoproject.com/svn/django/trunk@2910 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2006-05-16 04:05:55 +00:00
Adrian Holovaty f69cf70ed8 MERGED MAGIC-REMOVAL BRANCH TO TRUNK. This change is highly backwards-incompatible. Please read http://code.djangoproject.com/wiki/RemovingTheMagic for upgrade instructions.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@2809 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2006-05-02 01:31:56 +00:00
Adrian Holovaty cc3660c07d Fixed #878 -- URLconf regex captures no longer have to be named groups. Old URLconfs (with named groups) still work. This is backwards-incompatible if you've defined custom middleware with a process_view function. See http://code.djangoproject.com/wiki/BackwardsIncompatibleChanges
git-svn-id: http://code.djangoproject.com/svn/django/trunk@1470 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2005-11-27 22:08:51 +00:00
Adrian Holovaty 08a494c40d Added better error handling for trailing periods in URLconf include()s
git-svn-id: http://code.djangoproject.com/svn/django/trunk@1376 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2005-11-23 21:44:48 +00:00
Adrian Holovaty 38649f4c3f Fixed #537 -- Fixed typo in [718]. Thanks, Esaj
git-svn-id: http://code.djangoproject.com/svn/django/trunk@719 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2005-09-29 14:59:49 +00:00