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);
}

จะเห็นได้ว่าข้อมูลถูกลบออกจากหน้าต่างคำสั่ง