|
33 | 33 |
|
34 | 34 |
|
35 | 35 | class Operation(NinjaOperation): |
| 36 | + def __init__(self, *args: Any, url_name: Optional[str], **kwargs: Any) -> None: |
| 37 | + super().__init__(*args, **kwargs) |
| 38 | + self.url_name = url_name |
| 39 | + |
36 | 40 | def _log_action( |
37 | 41 | self, |
38 | 42 | logger: Callable[..., Any], |
@@ -83,10 +87,11 @@ def get_execution_context( |
83 | 87 | def _prep_run(self, request: HttpRequest, **kw: Any) -> Iterator: |
84 | 88 | try: |
85 | 89 | start_time = time.time() |
86 | | - values = self._get_values(request, kw) |
87 | | - context = self.get_execution_context(request, **values) |
| 90 | + context = self.get_execution_context(request, **kw) |
88 | 91 | # send route_context_started signal |
89 | 92 | route_context_started.send(RouteContext, route_context=context) |
| 93 | + values = self._get_values(request, kw) |
| 94 | + context.kwargs = values |
90 | 95 |
|
91 | 96 | yield values, context |
92 | 97 | self._log_action( |
@@ -193,6 +198,7 @@ def add_operation( |
193 | 198 | exclude_defaults=exclude_defaults, |
194 | 199 | exclude_none=exclude_none, |
195 | 200 | include_in_schema=include_in_schema, |
| 201 | + url_name=url_name, |
196 | 202 | ) |
197 | 203 |
|
198 | 204 | self.operations.append(operation) |
|
0 commit comments