mirror of
https://github.com/etesync/server
synced 2024-11-22 16:58:08 +00:00
Move utility functions to utils.
This commit is contained in:
parent
629a84f432
commit
13d4121fc2
@ -1,4 +1,3 @@
|
|||||||
import dataclasses
|
|
||||||
import typing as t
|
import typing as t
|
||||||
|
|
||||||
from asgiref.sync import sync_to_async
|
from asgiref.sync import sync_to_async
|
||||||
@ -8,7 +7,7 @@ from django.core.files.base import ContentFile
|
|||||||
from django.db import transaction
|
from django.db import transaction
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
from django.db.models import QuerySet
|
from django.db.models import QuerySet
|
||||||
from fastapi import APIRouter, Depends, status, Query, Request
|
from fastapi import APIRouter, Depends, status, Request
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel
|
||||||
|
|
||||||
from django_etebase import models
|
from django_etebase import models
|
||||||
@ -16,7 +15,7 @@ from .authentication import get_authenticated_user
|
|||||||
from .exceptions import ValidationError, transform_validation_error
|
from .exceptions import ValidationError, transform_validation_error
|
||||||
from .msgpack import MsgpackRoute, MsgpackResponse
|
from .msgpack import MsgpackRoute, MsgpackResponse
|
||||||
from .stoken_handler import filter_by_stoken_and_limit, filter_by_stoken, get_stoken_obj, get_queryset_stoken
|
from .stoken_handler import filter_by_stoken_and_limit, filter_by_stoken, get_stoken_obj, get_queryset_stoken
|
||||||
from .utils import get_object_or_404
|
from .utils import get_object_or_404, Context, Prefetch, PrefetchQuery
|
||||||
|
|
||||||
User = get_user_model()
|
User = get_user_model()
|
||||||
collection_router = APIRouter(route_class=MsgpackRoute)
|
collection_router = APIRouter(route_class=MsgpackRoute)
|
||||||
@ -24,16 +23,6 @@ default_queryset: QuerySet = models.Collection.objects.all()
|
|||||||
default_item_queryset: QuerySet = models.CollectionItem.objects.all()
|
default_item_queryset: QuerySet = models.CollectionItem.objects.all()
|
||||||
|
|
||||||
|
|
||||||
Prefetch = t.Literal["auto", "medium"]
|
|
||||||
PrefetchQuery = Query(default="auto")
|
|
||||||
|
|
||||||
|
|
||||||
@dataclasses.dataclass
|
|
||||||
class Context:
|
|
||||||
user: t.Optional[User]
|
|
||||||
prefetch: t.Optional[Prefetch]
|
|
||||||
|
|
||||||
|
|
||||||
class ListMulti(BaseModel):
|
class ListMulti(BaseModel):
|
||||||
collectionTypes: t.List[bytes]
|
collectionTypes: t.List[bytes]
|
||||||
|
|
||||||
|
@ -1,10 +1,25 @@
|
|||||||
from fastapi import status
|
import dataclasses
|
||||||
|
import typing as t
|
||||||
|
|
||||||
|
from fastapi import status, Query
|
||||||
|
|
||||||
from django.db.models import QuerySet
|
from django.db.models import QuerySet
|
||||||
from django.core.exceptions import ObjectDoesNotExist
|
from django.core.exceptions import ObjectDoesNotExist
|
||||||
|
from django.contrib.auth import get_user_model
|
||||||
|
|
||||||
from .exceptions import ValidationError
|
from .exceptions import ValidationError
|
||||||
|
|
||||||
|
User = get_user_model()
|
||||||
|
|
||||||
|
Prefetch = t.Literal["auto", "medium"]
|
||||||
|
PrefetchQuery = Query(default="auto")
|
||||||
|
|
||||||
|
|
||||||
|
@dataclasses.dataclass
|
||||||
|
class Context:
|
||||||
|
user: t.Optional[User]
|
||||||
|
prefetch: t.Optional[Prefetch]
|
||||||
|
|
||||||
|
|
||||||
def get_object_or_404(queryset: QuerySet, **kwargs):
|
def get_object_or_404(queryset: QuerySet, **kwargs):
|
||||||
try:
|
try:
|
||||||
|
Loading…
Reference in New Issue
Block a user