ค้นหาเว็บไซต์

javascript - การรวมข้อมูลใน Mongodb พร้อมการฉายแบบไดนามิก

ฉันกำลังศึกษาการใช้งาน MongoDB กับไดรเวอร์ Nodejs ใน Typescript; ฉันต้องการดึงเอกสารย่อยจากเอกสารด้วยการโปรเจ็กชันแบบ "ไดนามิก"; สิ่งนี้ควรทำโดยใช้ array ที่ระบุฟิลด์ที่ต้องการ:

{ "_id" : ObjectId("6006be017fdd3b1018e0f533"), "name" : "Cindy", "su

อ่านต่อไป →

typescript - การตรวจสอบความเท่าเทียมของ ObjectID ของ MongoDB ด้วยลินต์

ฉันกำลังมองหาวิธีที่ดีในการป้องกันการเขียน objectId1 === objectId2 เมื่อตรวจสอบความเท่ากันของ MongoDB ObjectIds จะดีมากถ้ามีกฎการลินต์ (หรือวิธีแก้ปัญหา TypeScript) เพื่อบังคับใช้เรื่องนี้

ปัญหา:

const theObjectIdAsString = "6228ab5bedddb4fb156e1f73"; const objectId = new ObjectId(theObjectIdAsString) const sameObjectId = new ObjectId(theObjectIdAsString) // works as expected objectId.equals(sameObjectId) // true objectId.toHexString() === sameObje

อ่านต่อไป →

javascript - MongoDB & Prisma: ความสัมพันธ์ M-to-N ทางเดียว

มีวิธีใดในการสร้างความสัมพันธ์ m-to-n ทางเดียวหรือไม่ หรือทั้งสองคอลเลกชันต้องมี id ของกันและกัน? ฉันกำลังพยายามทำบางอย่างเช่นนี้:

model Country { id String @id @default(auto()) @map("_id") @db.ObjectId name String @unique users User[] } model User { id

อ่านต่อไป →

node.js - วิธีแก้ปัญหา jest กับ mongodb บน gitlab

jest-mongodb (npm run test) ทำงานได้ดีบนเครื่องท้องถิ่นแต่ไม่ทำงานบน gitlab-ci มันเคยทำงานและจู่ๆ ก็หยุดทำงานแล้วแสดงข้อผิดพลาดดังต่อไปนี้

ไฟล์: jest.config.js

const merge = require('merge'); const ts_preset = require('ts-jest/jest-preset'); const jest_mongodb = require('@shelf/jest-mongodb/jest-preset'); module.exports = merge.recursive(ts_preset, jest_mongodb, { globals: { test_url: `http://${process.env.HOST || '127.0.0.1'}:${ process.env.PORT || 3000 }

อ่านต่อไป →

typescript - วิธีการเชื่อมต่อกับฐานข้อมูล mongodb หลายตัวใน NESTJS อย่างไดนามิกโดยไม่ต้องสร้างการเชื่อมต่อฐานข้อมูลใหม่ในแต่ละคำขอ

ผมอยากถามว่า: ผมกำลังใช้ Nest กับ MongoDB เป็น API สำหรับบริการหลายผู้เช่า นั่นหมายความว่าผมจะมีฐานข้อมูลใน MongoDB สำหรับผู้เช่าแต่ละราย ผมเห็นในเอกสารของ Nest ว่า เพื่อให้มีการเชื่อมต่อฐานข้อมูลหลายตัว เราจำเป็นต้องทำสิ่งนี้ใน app.module:

app.module.tsJS import { Module } from '@nestjs/common'; import { MongooseModule } from '@nestjs/mongoose'; @Module({ imports: [ MongooseModule.forRoot('mongodb://localhost/test', { connectionName: 'cats', }), MongooseMo

อ่านต่อไป →

โมเดล MongoDB Typescript: แปลงจาก snake_case เป็น camelCase

ดังนั้นฉันมีฐานข้อมูล mongo ที่มีทุกฟิลด์ใน snake_case

ใน TypeScript มันคงจะดีถ้าฉันสามารถใช้คลาสเป็นโมเดลได้ แต่ตัวแปรก็จำเป็นต้องเป็น snake_case ด้วย.. สามารถเปลี่ยนแปลงอะไรบางอย่างเพื่อให้ตัวแปรในคลาส TypeScript เป็น camelCase ได้ ในขณะที่รูปแบบการตั้งชื่อฐานข้อมูลยังคงเหมือนเดิมได้หรือไม่?

แก้ไข: ฉันลืมบอกไปว่าแอปพลิเคชันกำลังรันใน Node และตอนนี้ฉันก็ใช้แค่ไลบรารี mongodb มาตรฐานเท่านั้น ฉันก็เปิดรับที่จะใช้สิ่งอื่นถ้ามันช่วยแก้ปัญหานี้ได

อ่านต่อไป →

javascript - MongoDB: เพิ่มหรืออัปเดตไอเท็มที่มีอาร์เรย์ซ้อน

ฉันมีเอกสารที่มีข้อมูลดังต่อไปนี้:

Chest: { ChestID: 400, // Chest ID is unique Items: [{ ItemID: 200, //Item ID unique too ItemIndexes: ['aaa10', 'bbb20'] // indexes should not be repeated }] }

ฉันพยายามทำสิ่งนี้แล้วแต่ฉันหา วิธีที่จะทำให้มันใช้งานไม่ได้

public async appendItems(chestId: number, items: Array < ChestItem > ) { const tokensIds = items.map(item => item.tokenId) // bidimensional array [][]

อ่านต่อไป →

typescript - วิธีอัปเดตเอกสารย่อยใน MongoDB โดยใช้ Mongoose โดยไม่ต้องเขียนทับฟิลด์ที่มีอยู่?

ฉันมีสกีม่า Organization ซึ่งมีซับเอกสาร address กำหนดเป็น AddressSchema ทุกครั้งที่ฉันอัปเดตฟิลด์เดียวของซับเอกสาร address จากโมเดลแม่ Organization มันจะแทนที่ซับเอกสาร address ทั้งหมดด้วยฟิลด์ที่อัปเดต ฉันต้องการที่จะสามารถอัปเดตเฉพาะค่าที่เปลี่ยนแปลงและปล่อยซับเอกสาร address ที่เหลือไว้ตามเดิม

นี่คือโค้ดสำหรับสคีมาที่อยู่:

export const AddressSchema = new Schema<IAddress, AddressModel>({ city: { type:

อ่านต่อไป →

ข้อผิดพลาด Typescript เมื่อใช้ Next Auth V5 กับตัวปรับแต่ง MongoDB

ฉันกำลังได้รับข้อผิดพลาดของ TypeScript ในการตั้งค่า next auth ของฉันเมื่อพยายามเพิ่ม MongoDB adapter ฉันมี MongoDB และความคิดของฉันคือการสร้างผู้ใช้โดยใช้ next auth แล้วเข้าสู่ระบบด้วยผู้ให้บริการข้อมูลประจำตัว

ฉันกำลังใช้ Next Auth V5.

นี่คือไฟล์การตั้งค่าการตรวจสอบตัวตน

อ่านต่อไป →

javascript - Angular MongoDB เปลี่ยน Id ของข้อมูลตอบกลับ แต่ยังคงได้รับ Id ของข้อมูลคำร้องขอ

ฉันมีปัญหาเกี่ยวกับคำขอและการตอบสนองของฉัน ฉันกำลังจัดการปัญหาเมื่อผู้ใช้ต้องการเพิ่มสินค้าชนิดเดียวกันหลายชิ้นแต่มีขนาดต่างกัน สิ่งแรกที่ฉันทำคือ ตรวจสอบว่า Id มีอยู่แล้วหรือไม่โดยการทำ count และใช้ if statement หากมีอยู่แล้วฉันจะสร้าง object id ใหม่โดยใช้ ({"_id": ObjectId()}) โดยไม่ใส่พารามิเตอร์ ทุกอย่างทำงานตามที่คาดไว้ คือ สามารถแทรก object เดิมซ้ำได้ แต่มี id ใหม่ ขั้นตอนต่อไปที่ฉันทำคือส่งการตอบสนองที่แตกต่างออกไป และมันจะแสดงการตอบสนองด้วย Id ที่แตกต่าง แต่เมื่อฉันพยายามอัปเดต Id ของ

อ่านต่อไป →