Skip to content

Commit

Permalink
Fix drf issues
Browse files Browse the repository at this point in the history
  • Loading branch information
derneuere committed Apr 3, 2024
1 parent b0b5744 commit 1fc180d
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 27 deletions.
7 changes: 3 additions & 4 deletions api/filters.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@

from django.db.models import Q
from rest_framework import filters
from rest_framework.compat import distinct

import api.util as util
from api.image_similarity import search_similar_embedding
Expand All @@ -20,7 +19,8 @@ def filter_queryset(self, request, queryset, view):
return queryset

orm_lookups = [
self.construct_search(str(search_field)) for search_field in search_fields
self.construct_search(str(search_field), queryset=queryset)
for search_field in search_fields
]

if request.user.semantic_search_topk > 0:
Expand All @@ -37,7 +37,6 @@ def filter_queryset(self, request, queryset, view):
)
elapsed = (datetime.datetime.now() - start).total_seconds()
util.logger.info("search similar embedding - took %.2f seconds" % (elapsed))
base = queryset
conditions = []
for search_term in search_terms:
queries = [Q(**{orm_lookup: search_term}) for orm_lookup in orm_lookups]
Expand All @@ -53,5 +52,5 @@ def filter_queryset(self, request, queryset, view):
# call queryset.distinct() in order to avoid duplicate items
# in the resulting queryset.
# We try to avoid this if possible, for performance reasons.
queryset = distinct(queryset, base)
queryset = queryset.distinct()
return queryset
54 changes: 31 additions & 23 deletions librephotos/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -86,84 +86,92 @@ def post(self, request, *args, **kwargs):
router = routers.DefaultRouter()

router.register(r"api/user", user.UserViewSet, basename="user")
router.register(r"api/manage/user", user.ManageUserViewSet)
router.register(r"api/delete/user", user.DeleteUserViewSet)
router.register(r"api/manage/user", user.ManageUserViewSet, basename="manage_user")
router.register(r"api/delete/user", user.DeleteUserViewSet, basename="delete_user")

router.register(
r"api/albums/auto/list", album_auto.AlbumAutoListViewSet, basename="album_auto"
r"api/albums/auto/list", album_auto.AlbumAutoListViewSet, basename="album_auto_list"
)
router.register(
r"api/albums/date/list", albums.AlbumDateListViewSet, basename="album_date"
r"api/albums/date/list", albums.AlbumDateListViewSet, basename="album_date_list"
)
router.register(
r"api/albums/thing/list", albums.AlbumThingListViewSet, basename="album_thing"
r"api/albums/thing/list", albums.AlbumThingListViewSet, basename="album_thing_list"
)
router.register(
r"api/albums/place/list", albums.AlbumPlaceListViewSet, basename="album_place"
r"api/albums/place/list", albums.AlbumPlaceListViewSet, basename="album_place_list"
)
router.register(
r"api/albums/user/list", albums.AlbumUserListViewSet, basename="album_user"
r"api/albums/user/list", albums.AlbumUserListViewSet, basename="album_user_list"
)

router.register(
r"api/albums/user/edit", views.AlbumUserEditViewSet, basename="album_user"
r"api/albums/user/edit", views.AlbumUserEditViewSet, basename="edit_album_user"
)

router.register(
r"api/albums/user/shared/tome",
sharing.SharedToMeAlbumUserListViewSet,
basename="album_user",
basename="share_to_me_album_user",
)
router.register(
r"api/albums/user/shared/fromme",
sharing.SharedFromMeAlbumUserListViewSet,
basename="album_user",
basename="share_from_me_album_user",
)

router.register(r"api/albums/auto", album_auto.AlbumAutoViewSet, basename="album_auto")
router.register(r"api/albums/person", albums.AlbumPersonViewSet, basename="person")
router.register(
r"api/albums/person", albums.AlbumPersonViewSet, basename="album_person"
)
router.register(r"api/albums/date", albums.AlbumDateViewSet, basename="album_date")
router.register(r"api/albums/thing", albums.AlbumThingViewSet, basename="album_thing")
router.register(r"api/albums/place", albums.AlbumPlaceViewSet, basename="album_place")
router.register(r"api/albums/user", albums.AlbumUserViewSet, basename="album_user")

router.register(r"api/persons", albums.PersonViewSet, basename="person")
router.register(r"api/persons", albums.PersonViewSet, basename="persons")

router.register(
r"api/photos/shared/tome",
sharing.SharedToMePhotoSuperSimpleListViewSet,
basename="photo",
basename="shared_to_me_photo",
)
router.register(
r"api/photos/shared/fromme",
sharing.SharedFromMePhotoSuperSimpleListViewSet,
basename="photo",
basename="shared_from_me_photo",
)

router.register(
r"api/photos/notimestamp",
photos.NoTimestampPhotoViewSet,
basename="photo",
basename="photos_no_timestamp",
)

router.register(r"api/photos/edit", photos.PhotoEditViewSet, basename="photo")
router.register(r"api/photos/edit", photos.PhotoEditViewSet, basename="photo_edit")

router.register(
r"api/photos/recentlyadded", photos.RecentlyAddedPhotoListViewSet, basename="photo"
r"api/photos/recentlyadded",
photos.RecentlyAddedPhotoListViewSet,
basename="recently_added_photo",
)
router.register(
r"api/photos/searchlist", search.SearchListViewSet, basename="photo_search"
)
router.register(r"api/photos/searchlist", search.SearchListViewSet, basename="photo")

router.register(r"api/photos", photos.PhotoViewSet, basename="photo")
router.register(r"api/photos", photos.PhotoViewSet, basename="photos")

router.register(
r"api/faces/incomplete", faces.FaceIncompleteListViewSet, basename="face"
r"api/faces/incomplete",
faces.FaceIncompleteListViewSet,
basename="incomplete_faces",
)

router.register(r"api/faces", faces.FaceListView, basename="face")
router.register(r"api/faces", faces.FaceListView, basename="faces")

router.register(r"api/exists", upload.UploadPhotoExists, basename="exists")
router.register(r"api/exists", upload.UploadPhotoExists, basename="photo_exists")

router.register(r"api/jobs", jobs.LongRunningJobViewSet)
router.register(r"api/jobs", jobs.LongRunningJobViewSet, basename="jobs")
urlpatterns = [
re_path(r"^", include(router.urls)),
re_path(r"^api/django-admin/", admin.site.urls),
Expand Down

0 comments on commit 1fc180d

Please sign in to comment.