2014-10-26 32 views
0

我有一个将数据发送到基于sails.js的服务器的客户端应用程序注册表单。 其他然后,就是BEING发送基本数据,我也有一个图片上传该上传图像./tmp/uploads更改上传文件夹并将图像的位置放在api中 - sails.js

这里是我的服务器端代码(控制器):

upload: function (req, res) { 
    req.file('avatar').upload({ dirName: 'uploads' }, function (err, uploadedFiles){ 
     if (err) return res.send(500, err); 
     res.view({ 
     items: uploadedFiles 
     }); 
    }); 
} 

1 )我如何更改文件所在的文件夹?我有意不想要文件保存在.tmp文件夹中

2)如何将图像位置插入刚创建的数据api?并谈到图像位置,我如何访问图像文件?我平时预计像这个localhost:1337/.tmp/uploads/file.jpg会起作用。

回答

0

1)你必须把绝对路径中的道具 '目录名称',例如:

var PATH = '/var/www/app/uploads'; 
req.file('avatar').upload({ dirname: PATH }, function (err, uploadedFiles){ 

或者你也可以使用相对路径控制器:

var PATH = __dirname + '/../uploads'; 
req.file('avatar').upload({ dirname: PATH }, function (err, uploadedFiles){ 

2)您可以访问控制器中的每个型号,假设您有一个Image型号,可以通过以下方式保存位置:

Image.update({id:1},{location: PATH + '/' + uploadedFiles[0].filename}) 
+0

好,所以我设法把文件放在资产/ images.now我有另一个问题。图像以一些随机名称保存,我如何将其更改为原始文件名? – 2014-10-27 16:47:56