Django/ Невозможно загрузить изображение на сервер (multipart)
Я только начал изучать Django и серверное программирование, есть ли что-то, что я должен знать, пожалуйста, дайте совет.
Вопрос: Я пытаюсь загрузить изображение на сервер. Я получил Imagename (строка) и Imagefile (многочастичный файл) от android, Imagename успешно сохраняется с помощью приведенного ниже алгоритма, но Imagefile - нет. Я думаю, что проблема в том, что имя колонки рисунка изображения не imgfigure, а "Character". Что мне делать?
Ниже приведен код,
@view.py
@api_view(['POST'])
def Createtest(request):
if request.method == "POST":
serializer = FullSerializer(request.POST, request.FILES)
if serializer.is_valid():
serializer.save()
return JsonResponse({'code':'0000', 'msg': 'saved'}, status=200)
return JsonResponse({'code':'1001', 'msg': 'failed'}, status=200)
@serializer.py
class FullSerializer(forms.ModelForm):
class Meta:
model = Character
fields = ('imgname','imgfigure')
@model.py
class Character(models.Model):
imgname = models.TextField(max_length=20)
imgfigure = models.ImageField(upload_to='Image/',blank=True, null=True)
Вот данные запроса в Django
//The result of request.POST = <QueryDict: {'imgname': ['"session1"']}>
//The result of request.FILES = <MultiValueDict: {'character': [<InMemoryUploadedFile: haruRoll.jpg (image/*)>]}>
Вот сервис Retrofit из Kotlin
interface SessionCreateService {
@Multipart
@POST ("/character/create/")
fun SessCreate(
@Part("imgname") imgname:String,
@Part imgfigure : MultipartBody.Part,
):Call<SessionCreate_o> //output
}