|
@@ -55,6 +55,8 @@ def include(arg, namespace=None):
|
|
|
|
|
|
|
|
|
def _path(route, view, kwargs=None, name=None, Pattern=None):
|
|
|
+ from django.views import View
|
|
|
+
|
|
|
if isinstance(view, (list, tuple)):
|
|
|
# For include(...) processing.
|
|
|
pattern = Pattern(route, is_endpoint=False)
|
|
@@ -69,6 +71,12 @@ def _path(route, view, kwargs=None, name=None, Pattern=None):
|
|
|
elif callable(view):
|
|
|
pattern = Pattern(route, name=name, is_endpoint=True)
|
|
|
return URLPattern(pattern, view, kwargs, name)
|
|
|
+ elif isinstance(view, View):
|
|
|
+ view_cls_name = view.__class__.__name__
|
|
|
+ raise TypeError(
|
|
|
+ f'view must be a callable, pass {view_cls_name}.as_view(), not '
|
|
|
+ f'{view_cls_name}().'
|
|
|
+ )
|
|
|
else:
|
|
|
raise TypeError('view must be a callable or a list/tuple in the case of include().')
|
|
|
|