Как загрузить изображение с помощью Meteror CollectionFS в папку на сервере

я новичок в метеоре. И я обнаружил, что утеряны опции для хранения изображений. И, наконец, я решил использовать этот пакет

CollectionFS. Но в этом пакете он хранит файл в коллекции. Я не хочу хранить изображение в коллекции, я просто хочу загрузить его в папку на моем сервере.

Является ли это возможным? Как?

Спасибо,


person Hitesh S    schedule 08.05.2015    source источник


Ответы (1)


Вам повезло, это возможно! Пожалуйста, обратитесь к документации:

https://github.com/CollectionFS/Meteor-CollectionFS

В разделе «Адаптер хранилища» имеется в виду cfs:filesystem. Это позволяет вам сохранять файлы в файловой системе сервера, а не в коллекции через GridFS. Адаптер и его документацию можно найти здесь:

https://github.com/CollectionFS/Meteor-CollectionFS/tree/devel/packages/filesystem

Реализация довольно прямолинейна с документацией.

Как указано в документации, вы можете добавить что-то подобное в свой файл common.js:

var Images = new FS.Collection("images", {
    stores: [new FS.Store.FileSystem("images", {path: "~/uploads"})]
});

При этом создается коллекция FS.Collection с именем images, в которой изображения хранятся в свернутом виде, называемом uploads в вашем проекте, и создается коллекция, к которой можно привязать эти загрузки. Структурирование вашего проекта немного выходит за рамки вашего вопроса, но вы можете получить больше информации об этом здесь:

http://docs.meteor.com/#/full/structuringyourapp

person Tim C    schedule 08.05.2015
comment
для файловой системы они дали Uses, но не указали, где писать этот код. Не могли бы вы помочь? - person Hitesh S; 08.05.2015
comment
хорошо, я создал common.js, можно ли это написать в моем событии кнопки загрузки? 'нажмите #uploadTest': функция () {} - person Hitesh S; 08.05.2015
comment
Да :) проверьте документацию по инициации загрузки, и она должна показать вам, как это сделать. - person Tim C; 08.05.2015
comment
я написал этот код в моем файле события нажатия кнопки var = $('#testImage').get(0).files[0]; var Images = new FS.Collection(images, {stores: [new FS.Store.FileSystem(images, {path: myphotos})] }); код не выдает ошибку и создает папку myphotos но в этой папке нет изображений, можете помочь? - person Hitesh S; 08.05.2015