Compare commits
5 Commits
06ed6944ed
...
b0b51b5613
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b0b51b5613 | ||
|
|
d784968eb3 | ||
|
|
096c8e8458 | ||
|
|
2c3470578b | ||
|
|
b5c8f7da84 |
@@ -38,3 +38,13 @@ class ContactMessage(models.Model):
|
||||
|
||||
def __str__(self):
|
||||
return f"Message from {self.name}"
|
||||
|
||||
# ======== FAQ MODEL ========
|
||||
class FAQ(models.Model):
|
||||
question_uz = models.CharField(max_length=255)
|
||||
question_ru = models.CharField(max_length=255)
|
||||
answer_uz = models.TextField()
|
||||
answer_ru = models.TextField()
|
||||
|
||||
def __str__(self):
|
||||
return f"FAQ: {self.question_uz}"
|
||||
@@ -1,7 +1,7 @@
|
||||
from rest_framework import serializers
|
||||
from .models import Product, ContactMessage , ProductFeature
|
||||
from .models import Product, ContactMessage , ProductFeature , FAQ
|
||||
|
||||
# Feature serializer
|
||||
# Feature serializer gitea
|
||||
class ProductFeatureSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = ProductFeature
|
||||
@@ -19,3 +19,14 @@ class ContactSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = ContactMessage
|
||||
fields = "__all__"
|
||||
|
||||
class FAQSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = FAQ
|
||||
fields = [
|
||||
'id',
|
||||
'question_uz',
|
||||
'question_ru',
|
||||
'answer_uz',
|
||||
'answer_ru',
|
||||
]
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
from django.conf import settings
|
||||
from django.conf.urls.static import static
|
||||
from django.urls import path
|
||||
from .views import get_products, create_contact
|
||||
from .views import get_products, create_contact , get_faqs
|
||||
|
||||
urlpatterns = [
|
||||
path('products/', get_products), # GET
|
||||
path('contact/', create_contact), # POST
|
||||
path('faqs/', get_faqs), # GET
|
||||
]
|
||||
|
||||
|
||||
|
||||
@@ -23,3 +23,13 @@ def create_contact(request):
|
||||
return Response({"success": True}, status=status.HTTP_201_CREATED)
|
||||
|
||||
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
|
||||
|
||||
# --- GET FAQS ---
|
||||
@api_view(['GET'])
|
||||
def get_faqs(request):
|
||||
from .models import FAQ
|
||||
from .serializers import FAQSerializer
|
||||
|
||||
faqs = FAQ.objects.all()
|
||||
serializer = FAQSerializer(faqs, many=True)
|
||||
return Response(serializer.data, status=status.HTTP_200_OK)
|
||||
|
||||
@@ -62,7 +62,7 @@ MIDDLEWARE = [
|
||||
# Faqat ma’lum domenlarga ruxsat
|
||||
CORS_ALLOWED_ORIGINS = [
|
||||
"http://localhost:3000", # Next.js dev server
|
||||
"https://firma-plum.vercel.app", # production frontend
|
||||
"https://firma-plum.vercel.app", # production frontend yes of course
|
||||
"https://serenmebel.uz",
|
||||
"https://www.serenmebel.uz",
|
||||
"https://www.maxdi.uz",
|
||||
|
||||
Reference in New Issue
Block a user