a python package for type checking the urls and associated views.
Project description
django-UrlConfChecks
a python package for type checking the urls and associated views
Installation
pip install django-urlconfchecks
Usage
Add this to your settings.py imports:
import django_urlconfchecks
Features
Using this package, URL pattern types will automatically be matched with associated views, and in case of mismatch, an error will be raised.
Example:
# urls.py
from django.urls import path
from . import views
urlpatterns = [
path('articles/<str:year>/', views.year_archive),
path('articles/<int:year>/<int:month>/', views.month_archive),
path('articles/<int:year>/<int:month>/<slug:slug>/', views.article_detail),
]
# views.py
def special_case(request):
pass
def year_archive(request, year: int):
pass
def month_archive(request, year: int, month: int):
pass
def article_detail(request, year: int, month: int, slug: str):
pass
output will be:
(urlchecker.E002) For parameter `year`, annotated type int does not match expected `str` from urlconf
- TODO
- Fine-grained methods for silencing checks.
- Should only warn for each unhandled Converter once
- Regex patterns perhaps? (only RoutePattern supported at the moment)
Credits
- Luke Plant for providing the idea and the initial code.
- This package was created with Cookiecutter and the waynerv/cookiecutter-pypackage project template.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
django-urlconfchecks-0.3.1.tar.gz
(19.6 kB
view hashes)
Built Distribution
Close
Hashes for django-urlconfchecks-0.3.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 59598386c2da43d7bb932b1df645dbe951bf50753502221bf89c28b110740ea2 |
|
MD5 | 4966d91a001a78822c7ad62779f33e99 |
|
BLAKE2b-256 | eb897f450569232f1d59251d81f29a3eb158dbc91e77a75b9644c2b7e39bd118 |
Close
Hashes for django_urlconfchecks-0.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ed75aab4569263a35784ca8479d57fda263dcfdfe7531a3ebdef8e1f6f955cb |
|
MD5 | f09c8f356ebed604a99458d11cf13fb1 |
|
BLAKE2b-256 | b7b504471df03d239b5502f1ee7469bb27a69c10af6ea528b6fd31f806a0b2b4 |