0

画像アンドロイド(クライアント)をbase64文字列に変換してdjango(サーバー)に送信しようとしています。サーバー側で文字列を受け取り、デコードして名前を変更しました。ただし、画像を保存しようとすると失敗します。

これは、サーバー上で画像が保存されるはずのパスです。models.py

class App(models.Model):
    name = models.CharField(max_length=200)
    #create_date = models.DateTimeField('date created')
    category = models.CharField(max_length=200, null=True)
    app_logo = models.ImageField(upload_to="/root/AR_BROWSER/example/static/uploaded_pics", null=True, blank=True)
    user = models.ForeignKey(App_User)
    def __unicode__(self):
        return self.name

views.py の関数

@csrf_exempt    
def create_app(request):
    appName = request.POST['name']
    user = request.POST['userID']
    c = request.POST['category']
    i = request.POST['image']
    imgdata = base64.b64decode(i)
    t = datetime.now()
    filename = t.strftime('%Y%m%d%H%M%S.jpg') 
    with open(filename, 'wb') as f:
        f.write(imgdata)
    u=App_User.objects.get(id=user)
    apps = App.objects.create(name = appName, category=c, user_id = u.id, app_logo=filename)
    apps.save()

    return HttpResponse("You created %s." % apps.name)
4

0 に答える 0