Как загрузить несколько изображений в Cloudinary?

Я реализовал рабочий почтовый маршрут, который загружает одно изображение в облако при отправке.

Что нужно изменить, чтобы разрешить загрузку нескольких изображений? Любая помощь приветствуется.

Мой маршрут сообщения:

app.post("/portfolio/new", upload.single('image'), function(req, res) {
    cloudinary.v2.uploader.upload(req.file.path, function(err, result) {
        if (err) {
            console.log(err);
        }

        req.body.image = result.secure_url;
        console.log(req.body.image);

        Portfolio.create(req.body.project, function(err, newProject) {]
            if (err) {
                console.log(err);
            }
            res.redirect("/portfolio");
        });
    });
});

Мой HTML (с EJS):

<form action="/portfolio/new" enctype="multipart/form-data" method="POST">
    <div>
        Select images: 
        <input type="file" id="image" name="image" accept="image/*" required>
    </div>
</form>

person Ian    schedule 02.06.2020    source источник
comment
следуйте этому руководству https://medium.com/the-andela-way/how-to-upload-multiple-images-using-cloudinary-and-node-js-2f053b167b80   -  person turivishal    schedule 02.06.2020
comment
@turivishal Спасибо за ссылку на статью, но у меня недостаточно опыта, чтобы реструктурировать код в этом руководстве, чтобы он соответствовал моим потребностям. Автор описывает, как это можно сделать в виде отдельного приложения узла, а не знакомого маршрута отправки html-формы. Я пытался это сделать, но делаю много ошибок и никакого прогресса.   -  person Ian    schedule 03.06.2020
comment
Привет, @Ian, вы можете начать с основ, смотреть видеоуроки и обращаться к вопросам о переполнении стека и делать демонстрации, пожалуйста, опубликуйте свой другой вопрос как новый вопрос в переполнении стека, потому что вы получите больше ответов от многих участников переполнения стека.   -  person turivishal    schedule 03.06.2020


Ответы (2)


Чтобы добавить к вышесказанному, вы можете использовать это перо для простой загрузки нескольких изображений javascript: codepen.io/team/Cloudinary/pen/QgpyOK

Вот очень модный виджет загрузки с кучей встроенных опций: codepen.io/dzeitman/pen/EwgjJV

Надеюсь, это поможет другим, пытающимся сделать что-то подобное, и просто хочу увидеть, как что-то работает.

person Tessa Mero    schedule 02.04.2021

во входном теге вы должны написать ... несколько. а в почтовом маршруте надо написать

upload.array("image") 

вместо

upload.single()

и в файле схемы вы должны определить изображение как массив объектов

i.e. image:[
{
URL: String,
filename: String
}
]
person Amar singh    schedule 06.07.2021