如何使用ember和RESTful API将图像上传到PostgreSQL数据库

时间:2018-08-27 11:23:18

标签: ember.js django-rest-framework image-upload

我有一个余烬应用程序,使用django rest框架和postgreSQL列出有关alumni的详细信息。我需要上传图片(存储在我的存储设备中)以及其他详细信息。如何在余烬中实现这一目标?

我可以通过从ember转换为base64并存储编码的字符串来做到这一点吗?如果可能的话,怎么办?

2 个答案:

答案 0 :(得分:2)

您可以将此模块用于此image-base64

答案 1 :(得分:0)

我能够使用base64编码将图像上传到PostgreSQL。我使用了ember-image-drop插件将图像转换为base64代码。

我在add路由中使用了这些代码(请注意,我使用的是pod结构):

template.hbs

<form {{action "submitAlumni" on="submit"}} class="alumniForm">
    <div>{{image-drop image=selectedImage placeholder="Image" helpText="Drop your image here, or click to select"}}</div>
    <button class="btn btn-primary" {{action "submitAlumni"}}>Submit</button>
</form>

route.js

import Route from '@ember/routing/route';

export default Route.extend({
});

controller.js

import Controller from '@ember/controller';
import { set } from '@ember/object';

export default Controller.extend({
    image: null,

    actions: {
        submitAlumni() {
            let image = this.get('selectedImage');
            var onFail = function(response) {
                alert(response);
            };
            const alumni = this.get('store').createRecord('alumni', {
                image: image,
            });
            alumni.save().then(() => {
                this.transitionToRoute('alumnis.show', alumni.id)
            }, onFail);
        },
    }
});