Add multi-image compositions, docker setup, tests, and docs

- Add CompositionImage model with multi-image upload and main image flag
- Add composition endpoints: add-images, set-main-image, delete image, by-created-at filter
- Make contact-us by_category public
- Add 24 API tests covering all endpoints
- Add Dockerfile, docker-compose, entrypoint and docker docs
- Add Persian API docs and update README and Postman collection

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Shayan Azadi
2026-06-24 13:43:34 +03:30
parent cc2e082d53
commit 7e71d922d3
18 changed files with 2332 additions and 398 deletions

View File

@@ -1,5 +1,5 @@
from django.contrib import admin
from .models import ContactUs, Composition, Campaign
from .models import ContactUs, Composition, Campaign, CompositionImage
@admin.register(ContactUs)
@@ -24,12 +24,20 @@ class ContactUsAdmin(admin.ModelAdmin):
)
class CompositionImageInline(admin.TabularInline):
model = CompositionImage
extra = 1
fields = ['image', 'is_main', 'created_at']
readonly_fields = ['created_at']
@admin.register(Composition)
class CompositionAdmin(admin.ModelAdmin):
list_display = ['name', 'created_at']
search_fields = ['name', 'description']
readonly_fields = ['created_at', 'updated_at']
date_hierarchy = 'created_at'
inlines = [CompositionImageInline]
fieldsets = (
('اطلاعات ترکیب', {