【发布时间】:2016-01-31 16:08:44
【问题描述】:
一些“新闻文件”(一个集合)可能包含一张图片(我正在使用的另一个集合cfs:standard-packagesand
cfs:filesystem处理文件。)
这是 Mongo 数据库中的新闻文档:
{
"_id" : "75d5nZGitsLvo5APM",
"title" : "News with Image",
"description" : "This news entry has an image",
"type" : "news",
"createdAt" : ISODate("2016-01-31T15:46:01.334Z"),
"coverImageId" : "js5k88PuPeKJwRqcq"
}
这是一个图像文档:
{
"_id" : "js5k88PuPeKJwRqcq",
"original" : {
"name" : "amir_rahbaran.jpg",
"updatedAt" : ISODate("2014-02-14T14:56:36.000Z"),
"size" : 41614,
"type" : "image/jpeg"
},
"uploadedAt" : ISODate("2016-01-31T15:45:58.060Z"),
"copies" : {
"images" : {
"name" : "amir_rahbaran.jpg",
"type" : "image/jpeg",
"size" : 41614,
"key" : "images-js5k88PuPeKJwRqcq-amir_rahbaran.jpg",
"updatedAt" : ISODate("2016-01-31T15:45:58.000Z"),
"createdAt" : ISODate("2016-01-31T15:45:58.000Z")
}
}
}
问题:管理员可能想要删除新闻条目。目前,一个新闻文件被删除。所以图像保存在数据库中。如您所见,新闻文档中的coverImageId 和图像文档中的_id相同。
我的模板.js:
Template.adminNewsEventsList.events({
'click #js-delete-ne': function (evt,template) {
evt.preventDefault();
var deleteConfirmation = confirm('Really delete this entry?');
if (deleteConfirmation) {
Images.remove({_id: "coverImageId"});
NewsEvents.remove(this._id);
};
}
});
我的模板.html:
<template name="adminNewsEventsList">
<div class="container">
<div class="col-md-6 col-md-offset-3">
{{#each newsEventsData}}
<ul class="list-group">
<li class="list-group-item">
<a title="Edit" id="js-edit-ne" href="{{pathFor route='adminNewsEventsEdit'}}">{{title}}</a>
<!-- edit button -->
<a title="Edit" id="js-edit-ne" class="btn btn-primary" href="{{pathFor route='adminNewsEventsEdit'}}"><i class="fa fa-pencil-square-o"></i></a>
<!-- delete button -->
<a title="Edit" id="js-delete-ne" class="btn btn-danger" href="#"><i class="fa fa-trash"></i> </a>
</li>
</ul>
{{/each}}
</div>
</div>
</template>
感谢任何帮助。
【问题讨论】:
标签: javascript mongodb events meteor