我有一个客户端应用程序注册表单,它将数据发送到我的sails.js服务器。 除了发送的基本数据,我还有一个上传图像的图像上传到./tmp/uploads
这是我的服务器端代码(在控制器中):
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 :(得分:0)
1)你必须在prop'dirname'中放置一个绝对路径,例如:
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})