Given a view like this:
# my_app/views.py
def index(request):
...
def list(request):
...
def about(request):
...
Instead of explicitly declaring the urls in urls.py for each method in the view:
# urls.py
url(r'^index$', 'my_app.views.index'),
url(r'^list$', 'my_app.views.list'),
url(r'^about$', 'my_app.views.about'),
...
Is it possible to just give the URL dispatcher the view (my_apps.views) and have it handle all the view’s methods?
I suppose you can have one view that captures a url regexp,
r'^(?P<viewtype>index|list|about)/$', 'myview'with a view that handles the captured parameter.
But I’d really recommend keeping your view logic separated for clarity. It’s much easier to follow 3 different views with their specific functions than 3 if / then statements.