0
情況:我使用lepozepo:cloudinary軟件包將圖像上傳成爲Meteor應用程序的配置文件圖片。所以每個用戶有1個配置文件圖像。上傳新照片將取代照片。同樣,刪除它將刪除唯一上傳的圖片。如何檢索Cloudinery上傳的圖像並將其刪除?
所以我的問題是:
- 我需要有一個集合存儲圖像?我更喜歡 上傳到雲,並獲取URL以顯示它基於userId。
- 一旦圖片上傳,如何顯示上傳的圖片,如果不顯示默認圖片,我該如何顯示{{#if image}}?
- 我覺得上傳堆棧。有沒有什麼辦法可以指定1張圖片的maximim上傳。如果上傳另一個,那麼它會替換現有的?
- 我該如何才能顯示最新上傳的圖片?
該代碼。 ** config.js在服務器和客戶端都被設置。
1)profile.js
Template.profile.events({
'submit form': function(e, t) {
e.preventDefault();
var files = [];
var file = $('#userimage')[0].files[0];
files.push(file);
console.log(files);
Cloudinary._upload(files[0], {}, function(err, res) {
if (err){
console.log("Error: " + err);
} else {
console.log("Success :" + res);
}
});
}
});
2)profile.html
<form>
<input type="file" id="userimage" name="userimage" class='upload_field cloudinary_fileupload' />
<div class="progress_bar" style='background-color: red, height: 20px'>
<div class='thumbnails'></div>
<button type="submit"> Upload </button>
<button type="delete"> Clear </button>
</form>
即時通訊,不太熟悉。我沒有用戶集合,因爲我使用流星內置的一個。是否有可能說圖像收集,並在當前用戶下標記?即userId:Meteor.userId()?如果不是,我應該如何設置用戶集合? – Thinkerer
您正在使用流星內置的帳戶系統嗎?這意味着你有一個用戶集合。當你添加'accounts- *'包時,Meteor在Mongodb爲你創建一個名爲'users'的集合。要存儲化身,只需將其更新到您的用戶文檔:'Meteor.users.update({_ id:Meteor.userId()},{$ set:{'profile.avatar':public_id}});' – Khang
我已標記這是一個答案。此外,我遇到了進一步的錯誤,並已張貼在這裏 http://stackoverflow.com/questions/40992614/public-id-is-not-defined-meteorcloudinary – Thinkerer