ad modelga location yuborish qoshilgit
This commit is contained in:
@@ -11,6 +11,7 @@ class SubProductInline(TabularInline):
|
|||||||
@admin.register(ProductsModel)
|
@admin.register(ProductsModel)
|
||||||
class ProductsAdmin(ModelAdmin):
|
class ProductsAdmin(ModelAdmin):
|
||||||
list_display = ("id", "name", "price", "order", "subcategory", "created_at")
|
list_display = ("id", "name", "price", "order", "subcategory", "created_at")
|
||||||
|
list_editable = ("order",)
|
||||||
list_filter = ("subcategory__category__filial", "subcategory__category", "subcategory", "created_at")
|
list_filter = ("subcategory__category__filial", "subcategory__category", "subcategory", "created_at")
|
||||||
search_fields = ("name", "subcategory__name", "subcategory__category__name")
|
search_fields = ("name", "subcategory__name", "subcategory__category__name")
|
||||||
list_select_related = ("subcategory", "subcategory__category", "subcategory__category__filial")
|
list_select_related = ("subcategory", "subcategory__category", "subcategory__category__filial")
|
||||||
|
|||||||
@@ -66,3 +66,9 @@ class CreateProductsSerializer(BaseProductsSerializer):
|
|||||||
"image",
|
"image",
|
||||||
"order",
|
"order",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
class UpdateProductOrderSerializer(serializers.ModelSerializer):
|
||||||
|
class Meta:
|
||||||
|
model = ProductsModel
|
||||||
|
fields = ["id", "order"]
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
from django_core.mixins import BaseViewSetMixin
|
from django_core.mixins import BaseViewSetMixin
|
||||||
from drf_spectacular.utils import extend_schema
|
from drf_spectacular.utils import extend_schema
|
||||||
|
from rest_framework.mixins import UpdateModelMixin
|
||||||
from rest_framework.permissions import AllowAny
|
from rest_framework.permissions import AllowAny
|
||||||
from rest_framework.viewsets import ReadOnlyModelViewSet
|
from rest_framework.viewsets import ReadOnlyModelViewSet
|
||||||
|
|
||||||
@@ -8,22 +9,23 @@ from core.apps.api.serializers.products import (
|
|||||||
CreateProductsSerializer,
|
CreateProductsSerializer,
|
||||||
ListProductsSerializer,
|
ListProductsSerializer,
|
||||||
RetrieveProductsSerializer,
|
RetrieveProductsSerializer,
|
||||||
|
UpdateProductOrderSerializer,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
from core.apps.api.filters.products import ProductsFilter
|
from core.apps.api.filters.products import ProductsFilter
|
||||||
|
|
||||||
|
|
||||||
@extend_schema(tags=["products"])
|
@extend_schema(tags=["products"])
|
||||||
class ProductsView(BaseViewSetMixin, ReadOnlyModelViewSet):
|
class ProductsView(BaseViewSetMixin, UpdateModelMixin, ReadOnlyModelViewSet):
|
||||||
queryset = ProductsModel.objects.all()
|
queryset = ProductsModel.objects.all()
|
||||||
serializer_class = ListProductsSerializer
|
serializer_class = ListProductsSerializer
|
||||||
permission_classes = [AllowAny]
|
permission_classes = [AllowAny]
|
||||||
filterset_class = ProductsFilter
|
filterset_class = ProductsFilter
|
||||||
|
http_method_names = ["get", "patch", "head", "options"]
|
||||||
|
|
||||||
action_permission_classes = {}
|
action_permission_classes = {}
|
||||||
action_serializer_class = {
|
action_serializer_class = {
|
||||||
"list": ListProductsSerializer,
|
"list": ListProductsSerializer,
|
||||||
"retrieve": RetrieveProductsSerializer,
|
"retrieve": RetrieveProductsSerializer,
|
||||||
"create": CreateProductsSerializer,
|
"create": CreateProductsSerializer,
|
||||||
|
"partial_update": UpdateProductOrderSerializer,
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user