Adding an some warnings, checks, or exceptions for urls

68 views
Skip to first unread message

Robert Roskam

unread,
Apr 25, 2016, 8:00:26 AM4/25/16
to Django developers (Contributions to Django itself)
I realize this is a really, really obvious and easily fixed newbie error. But here it is:

urlpatterns = [    
    url(r'^sitemap/', TemplateView.as_view(template_name='brochure/sitemap.html'), name="sitemap"),
    # More urls
]

Sitemap should end with dollar sign. The problem isn't bad when it immediately happens and you can slap yourself over the face and fix it. The problem is when you have a massive stack of these url patterns and you don't have a problem until you max a change by reordering.

So I think something should exist to make this easier to discover. Maybe a check or a warning. An exception seems rather harsh.

Tom Evans

unread,
Apr 25, 2016, 12:48:00 PM4/25/16
to django-d...@googlegroups.com
On Mon, Apr 25, 2016 at 1:00 PM, Robert Roskam <raider...@gmail.com> wrote:
> I realize this is a really, really obvious and easily fixed newbie error.
> But here it is:
>
> urlpatterns = [
> url(r'^sitemap/',
> TemplateView.as_view(template_name='brochure/sitemap.html'),
> name="sitemap"),
> # More urls
> ]
>
> Sitemap should end with dollar sign.

The problem is that the url should *usually* end with a dollar sign.
There are valid use cases for a url not starting with a caret or
ending with a dollar.

Cheers

Tom

Robert Roskam

unread,
Apr 25, 2016, 9:30:36 PM4/25/16
to Django developers (Contributions to Django itself)
I totally agree. There are circumstances when you'll omit a caret or a dollar sign, but as far as I can think of, it would seem to only be related to an include, so couldn't there be some kind of inspection done on whether there's an include an raise some message to basically say "yeah, I'm sure."? I think there could be.

One thing I hadn't thought about, though, is that core django maybe not be the right place, maybe django-lint or something like that.
Reply all
Reply to author
Forward
0 new messages