#python #django #image #django-models #imagefield
Вопрос:
Я хотел бы загрузить несколько изображений, используя поле модели Django(поле изображений). Я создал модель и смог загрузить несколько изображений на стороне администратора примерно так https://imgur.com/BzVDPC5 У меня есть идея здесь (https://github.com/raszidzie/Multiple-Images-Django-Tutorial) в посте(admin.py)
admin.py
from django.contrib import admin
from .models import School,SchoolImage
class SchoolImageAdmin(admin.StackedInline):
model = SchoolImage
@admin.register(School)
class SchoolAdmin(admin.ModelAdmin):
list_display=('school_name','school_type',"school_country")
search_fields=('school_name','school_type',"school_country")
list_filter=('school_name','school_type','school_gender')
inlines = [SchoolImageAdmin]
class Meta:
model =School
@admin.register(SchoolImage)
class SchoolImageAdmin(admin.ModelAdmin):
pass
Я создал модель школьного изображения для обработки нескольких изображений в admin.py
models.py
from django.db import models
from django_countries.fields import CountryField
from partial_date import PartialDateField
class School(models.Model):
school_name = models.CharField(max_length = 30)
school_country = CountryField()
school_city = models.CharField(max_length= 30,default= None)
school_population = models.IntegerField()
school_description = models.TextField(max_length = 300)
year_build = PartialDateField()
total_branches = models.IntegerField()
school_fees = models.IntegerField()
school_images = models.FileField()
def __str__(self):
return self.school_name
class SchoolImage(models.Model):
schoolImages = models.ImageField()
school = models.ForeignKey(School, on_delete=models.CASCADE)
def __str__(self):
return self.school.school_name
не уверен, как заставить его работать в veiws
вот мой код взглядов
from rest_framework.response import Response
from rest_framework.decorators import api_view
from rest_framework import status
from .models import School
from .serializers import *
@api_view(['GET','POST'])
def school_list(request):
if request.method == 'GET':
data = School.objects.all()
serializer = SchoolSerializer(data, context={'request': request},many = True)
return Response(serializer.data)
elif request.method == 'POST':
serializer = SchoolSerializer(data=request.data)
if serializer.is_valid():
serializer.save()
return Response( status=status.HTTP_201_CREATED)
return Response(serializer.errors,status=status.HTTP_404_NOT_FOUND)
Как мне заставить это работать в моих представлениях??
Комментарии:
1. не могли бы вы, пожалуйста, показать, что такое
multiple images in the admin side
2. @Fannigurt вот несколько изображений на стороне администратора ` imgur.com/BzVDPC5 `
3. @Fannigurt Я также отредактировал вопрос