Express を使用して NodeJS アプリを作成し、AppFog にアプリをアップロードしました。唯一の問題は、アプリ (「作成」テーブル用) の写真をアップロードするために、アプリにファイル アップロード フォームがあることです。ローカルでは動作しますが、AppFog では動作しません。AppFog がアップロード ファイルをロックしている可能性があります...何をすべきか正確にはわかりません...私の CHMOD ディレクトリは「0777」です。
(私の英語でごめんなさい、私はヨーロッパから来ました)
私の見解:
form.admin(action='/creations/save', method='post', enctype='multipart/form-data')
div
label(for='title') Title
input(type='text', name='title', placeholder='Title...')
div
label(for='thumbnail') Thumbnail
input(type='file', name='thumbnail')
div
label(for='moodboard') Moodboard
input(type='file', name='moodboard')
input(type='submit', value='Save')
input(type='reset', value='Cancel')
私のコントローラー:
var saveFile = function(file, folder){
var file_tmp = file.path;
var file_name = file.name;
var file_type = file.type;
var file = './uploads/'+folder+'/'+file_name;
console.log(file);
fs.rename(file_tmp, file, function(err){
if( err ) console.log(err);
});
}
exports.save = function(req, res) {
saveFile(req.files.thumbnail, 'thumbnails');
saveFile(req.files.moodboard, 'moodboards');
global.db.Creation.create({
title: req.body.title,
description: req.body.description,
location: req.body.location,
date: req.body.date,
thumbnail: req.files.thumbnail.name,
moodboard: req.files.moodboard.name
}).success( function(creation){
res.redirect('/glovebox');
});
}
アンソニー