@@ -30,7 +30,7 @@ class Router(TemplateView):
3030 def __init__ (self , route , controller ):
3131 self .__route = route
3232 self .__callable = controller
33- self .__app ['router' ] = RouteMapping ()
33+ self .__app ['router' ] = object ()
3434
3535 @csrf_exempt
3636 def route (self , request : HttpRequest ):
@@ -42,6 +42,8 @@ def route(self, request: HttpRequest):
4242 self .__request = request
4343 self .__uri = request .path [1 :]
4444 self .__method = request .method
45+ self .__app ['router' ] = RouteMapping ()
46+ self .__bound_routes = dict ()
4547
4648 routes = self .__callable ().connect (self .__app )
4749
@@ -107,14 +109,15 @@ def request_matches_route(self, actual_route: str(), expected_route: str()):
107109 actual_params = self .get_url_params (actual_route )
108110 i = 0
109111
110- for param in expected_params :
111- if param [ 0 ] != "{" :
112- if ( len ( actual_params ) - 1 ) >= i :
113- if param != actual_params [i ]:
112+ if len ( expected_params ) == len ( actual_params ) :
113+ for param in actual_params :
114+ if expected_params [ i ][ 0 ] != "{" :
115+ if param != expected_params [i ]:
114116 return False
115- else :
116- return False
117- i += 1
117+ i += 1
118+ else :
119+ return False
120+
118121 return True
119122
120123 def authenticate (self , bound_route , actual_params ):
0 commit comments