Skip to content

Commit d52160b

Browse files
authored
Merge pull request #155 from PotLock/testnet
Testnet
2 parents 99682da + c6c8b27 commit d52160b

File tree

2 files changed

+6
-11
lines changed

2 files changed

+6
-11
lines changed

lists/api.py

+5-4
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
OpenApiResponse,
1111
extend_schema,
1212
)
13+
from django.db.models import Count
1314
from rest_framework.request import Request
1415
from rest_framework.response import Response
1516
from rest_framework.views import APIView
@@ -69,7 +70,7 @@ class ListsListAPI(APIView, CustomSizePageNumberPagination):
6970
)
7071
@method_decorator(cache_page(60 * 1))
7172
def get(self, request: Request, *args, **kwargs):
72-
lists = List.objects.all().select_related("owner").prefetch_related("admins")
73+
lists = List.objects.all().select_related("owner").prefetch_related("admins", "upvotes").annotate(registrations_count=Count('registrations'))
7374
account_id = request.query_params.get("account")
7475
if account_id:
7576
try:
@@ -176,10 +177,10 @@ class ListRegistrationsAPI(APIView, CustomSizePageNumberPagination):
176177
@method_decorator(cache_page(60 * 1))
177178
def get(self, request: Request, *args, **kwargs):
178179
list_id = kwargs.get("list_id")
179-
#list_obj = List.objects.prefetch_related('registrations').get(on_chain_id=list_id)
180-
registrations = ListRegistration.objects.filter(list__on_chain_id=list_id).select_related("list__owner", "registrant", "registered_by").prefetch_related("list__admins")
180+
# list_obj = List.objects.get(on_chain_id=list_id)
181+
registrations = ListRegistration.objects.filter(list__on_chain_id=list_id).select_related("list", "list__owner", "registrant", "registered_by").prefetch_related("list__admins", "list__upvotes")
181182

182-
# registrations = list_obj.registrations.select_related().all()
183+
# registrations = list_obj.registrations.select_related("list", "list__owner", "registrant", "registered_by").prefetch_related("list__admins").annotate(registrations_count=Count('list_registrations')).all()
183184
status_param = request.query_params.get("status")
184185
category_param = request.query_params.get("category")
185186
search_param = request.query_params.get("search")

lists/serializers.py

+1-7
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ class Meta:
1313

1414

1515
class ListSerializer(ModelSerializer):
16+
registrations_count = serializers.IntegerField(required=False)
1617
class Meta:
1718
model = List
1819
fields = [
@@ -34,10 +35,6 @@ class Meta:
3435
owner = AccountSerializer()
3536
admins = AccountSerializer(many=True)
3637
upvotes = ListUpvoteSerializer(many=True)
37-
registrations_count = SerializerMethodField()
38-
39-
def get_registrations_count(self, obj):
40-
return obj.registrations.count()
4138

4239
# def get_owner(self, obj):
4340
# return AccountSerializer(obj.owner).data
@@ -51,7 +48,6 @@ class Meta:
5148
model = ListRegistration
5249
fields = [
5350
"id",
54-
"list",
5551
"registrant",
5652
"registered_by",
5753
"status",
@@ -62,7 +58,6 @@ class Meta:
6258
"tx_hash",
6359
]
6460

65-
list = ListSerializer()
6661
registrant = AccountSerializer()
6762
registered_by = AccountSerializer()
6863

@@ -104,7 +99,6 @@ class PaginatedListsResponseSerializer(serializers.Serializer):
10499
"registrant_notes": "I'm excited to apply for this list",
105100
"admin_notes": "This is a great project that I want on my list.",
106101
"tx_hash": "EVMQsXorrrxPLHfK9UnbzFUy1SVYWvc8hwSGQZs4RbTk",
107-
"list": SIMPLE_LIST_EXAMPLE,
108102
"registrant": SIMPLE_ACCOUNT_EXAMPLE,
109103
"registered_by": SIMPLE_ACCOUNT_EXAMPLE,
110104
}

0 commit comments

Comments
 (0)