raise RuntimeError(multipart_not_installed_error) from None
-def get_param_sub_dependant(
- *,
- param_name: str,
- depends: params.Depends,
- path: str,
- security_scopes: Optional[List[str]] = None,
-) -> Dependant:
- assert depends.dependency
- return get_sub_dependant(
- depends=depends,
- dependency=depends.dependency,
- path=path,
- name=param_name,
- security_scopes=security_scopes,
- )
-
-
def get_parameterless_sub_dependant(*, depends: params.Depends, path: str) -> Dependant:
assert callable(depends.dependency), (
"A parameter-less dependency must have a callable dependency"
security_scopes: Optional[List[str]] = None,
use_cache: bool = True,
) -> Dependant:
- path_param_names = get_path_param_names(path)
- endpoint_signature = get_typed_signature(call)
- signature_params = endpoint_signature.parameters
dependant = Dependant(
call=call,
name=name,
security_scopes=security_scopes,
use_cache=use_cache,
)
+ path_param_names = get_path_param_names(path)
+ endpoint_signature = get_typed_signature(call)
+ signature_params = endpoint_signature.parameters
for param_name, param in signature_params.items():
is_path_param = param_name in path_param_names
param_details = analyze_param(
is_path_param=is_path_param,
)
if param_details.depends is not None:
- sub_dependant = get_param_sub_dependant(
- param_name=param_name,
+ assert param_details.depends.dependency
+ sub_dependant = get_sub_dependant(
depends=param_details.depends,
+ dependency=param_details.depends.dependency,
path=path,
+ name=param_name,
security_scopes=security_scopes,
)
dependant.dependencies.append(sub_dependant)