2014-10-26 39 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