Meteor - คอลเลกชัน
ในบทนี้เราจะเรียนรู้วิธีการใช้งาน MongoDB คอลเลกชัน
สร้างคอลเล็กชัน
เราสามารถสร้างคอลเลกชันใหม่ด้วยรหัสต่อไปนี้ -
eorApp.js
MyCollection = new Mongo.Collection('myCollection');
เพิ่มข้อมูล
เมื่อสร้างคอลเล็กชันแล้วเราสามารถเพิ่มข้อมูลได้โดยใช้ไฟล์ insert วิธี.
eorApp.js
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
ค้นหาข้อมูล
เราสามารถใช้ไฟล์ find วิธีการค้นหาข้อมูลในคอลเลกชัน
eorApp.js
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
var findCollection = MyCollection.find().fetch();
console.log(findCollection);
คอนโซลจะแสดงข้อมูลที่เราแทรกไว้ก่อนหน้านี้
เราจะได้ผลลัพธ์เดียวกันโดยการเพิ่มพารามิเตอร์การค้นหา
eorApp.js
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
var findCollection = MyCollection.find({key1: "value 1..."}).fetch();
console.log(findCollection);
อัปเดตข้อมูล
ขั้นตอนต่อไปคือการอัปเดตข้อมูลของเรา หลังจากที่เราสร้างคอลเล็กชันและแทรกข้อมูลใหม่แล้วเราสามารถใช้ไฟล์update วิธี.
eorApp.js
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
var findCollection = MyCollection.find().fetch();
var myId = findCollection[0]._id;
var updatedData = {
key1: "updated value 1...",
key2: "updated value 2...",
key3: "updated value 3...",
key4: "updated value 4...",
key5: "updated value 5..."
}
MyCollection.update(myId, updatedData);
var findUpdatedCollection = MyCollection.find().fetch();
console.log(findUpdatedCollection);
คอนโซลจะแสดงว่าคอลเล็กชันของเรามีการอัปเดต
ลบข้อมูล
ข้อมูลสามารถลบออกจากคอลเลกชันโดยใช้ไฟล์ removeวิธี. เรากำลังตั้งค่าid ในตัวอย่างนี้เป็นพารามิเตอร์เพื่อลบข้อมูลเฉพาะ
eorApp.js
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
var findCollection = MyCollection.find().fetch();
var myId = findCollection[0]._id;
MyCollection.remove(myId);
var findDeletedCollection = MyCollection.find().fetch();
console.log(findDeletedCollection);
คอนโซลจะแสดงอาร์เรย์ว่าง
หากเราต้องการลบทุกอย่างออกจากคอลเลกชันเราสามารถใช้วิธีการเดียวกันนี้แทนได้ id เราจะใช้วัตถุว่างเปล่า {}. เราจำเป็นต้องดำเนินการนี้บนเซิร์ฟเวอร์ด้วยเหตุผลด้านความปลอดภัย
eorApp.js
if (Meteor.isServer) {
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
MyCollection.remove({});
var findDeletedCollection = MyCollection.find().fetch();
console.log(findDeletedCollection);
}
เรายังสามารถลบข้อมูลโดยใช้พารามิเตอร์อื่น ๆ ดังตัวอย่างก่อนหน้านี้ Meteor จะบังคับให้เราทำสิ่งนี้จากเซิร์ฟเวอร์
eorApp.js
if (Meteor.isServer) {
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
MyCollection.remove({key1: "value 1..."});
var findDeletedCollection = MyCollection.find().fetch();
console.log(findDeletedCollection);
}
จะเห็นได้ว่าข้อมูลถูกลบออกจากหน้าต่างคำสั่ง