backbone.js图片上传

我正在使用nodecellar来更好地理解backbone.js,并且遇到了一个类似的问题,这个问题得到了很好的回答,但是,答案似乎并不适用于我:

我正在尝试做什么。

使用Nodecellars wineview,我试图利用拖放function,上传图像。 我已经logging了一个以前很好回答的问题,基本上说,你必须禁用dragover的默认行为,所以我有以下在我的酒视图:

events: { "change" : "change", "click .save" : "beforeSave", "click .delete" : "deleteWine", "drop #profile" : "dropHandler", "dragover #profile" : "dragover", 'dragenter #profile' : 'alertMe' }, 

那么我的dragover事件看起来像这样:

  dragover: function(event){ console.log('drag over event called'); event.preventDefault(); }, 

这很好,因为控制台日志在被触发时被调用。 这个拖拽操作符看起来像这样:

  dropHandler: function (event) { event.stopPropagation(); event.preventDefault(); var e = event.originalEvent; e.dataTransfer.dropEffect = 'copy'; this.pictureFile = e.dataTransfer.files[0]; // Read the image file from the local file system and display it in the img tag var reader = new FileReader(); reader.onloadend = function () { $('#profile').attr('src', reader.result); $('#picText').html('Picture added, select save to complete changes.') }; reader.readAsDataURL(this.pictureFile); } 

问题

代码可以工作,但是它不会上传图像或者将模型中的细节保存到数据库中。 所以一旦我离开,然后再select葡萄酒的形象是回到原来的。

我已经做了一些关于HTML5 fileReader api的研究,但是关于如何上传或者上传的地方没有太多的介绍。

这就是我现在的位置,我正在寻找你们如何确保模型保存图像url的build议,并将图像上传到图片文件夹。

最好的办法是如何去做到这一点。 HTML 5 fileReader API是最好的select吗?

感谢您的反馈意见。

松鸦

您在函数dropHandler中缺less对模型的调用,以便为要保存的图像设置属性。