Allowing unauthenticated users to see scopes
This commit is contained in:
1 parent
2ce4f91e4f
commit
3253d8e858
8 files changed
+136
-27
No files matched your search
@@ -29,6 +29,7 @@ async def build(
|
||||
scope_model_id: int | None = None,
|
||||
sub_part_type_id: int | None = None,
|
||||
fits_part_type_id: int | None = None,
|
||||
only_exact: bool = False,
|
||||
) -> dict:
|
||||
"""Return the context for ``scopes.html``.
|
||||
|
||||
@@ -40,6 +41,10 @@ async def build(
|
||||
themselves — this always returns the full filtered set, since
|
||||
``fits_part_type_id`` is a post-filter that can't be pushed into the DB query.
|
||||
|
||||
``only_exact`` drops ``possible`` fits entirely, keeping only user-confirmed
|
||||
``exact`` ones — used for anonymous visitors, who shouldn't see unconfirmed
|
||||
fit candidates.
|
||||
|
||||
Shape::
|
||||
|
||||
{
|
||||
@@ -80,6 +85,8 @@ async def build(
|
||||
fits = await fit_crud.list_for_parts(
|
||||
db, list(scope_ids), exclude_label=FitLabel.NONE
|
||||
)
|
||||
if only_exact:
|
||||
fits = [f for f in fits if f.label == FitLabel.EXACT]
|
||||
|
||||
# Resolve the "other" (non-scope) part on each fit in a single batched query.
|
||||
other_ids: set[int] = set()
|
||||
|
||||
Reference in new issue
Block a user