Mongoose: `select: false` Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ Π΄ΠΎΡ‡Π΅Ρ€Π½Π΅ΠΉ схСмы, Ссли дочСрняя схСма ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ€Π°Π·Π°

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 31 Π°Π²Π³. 2017  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: Automattic/mongoose

Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°ΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΈΠ»ΠΈ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ ΠΎΠ± ошибкС ?
Ошибка

Каково Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅?

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ скриптС, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΠΌ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ child возвращаСтся ΠΊΠ°ΠΊ {} , Π½ΠΎ child2 возвращаСтся ΠΊΠ°ΠΊ { field: 'test'} нСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ ChildSchema.field ΠΈΠΌΠ΅Π΅Ρ‚ select: false .

ΠŸΡ€ΠΈ просмотрС ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° выбираСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ child.field , Π° child2.field - Π½Π΅Ρ‚.



const mongoose = require('mongoose');

mongoose.connect('mongodb://127.0.0.1/test');
const db = mongoose.connection;

db.once('open', async () => {
  try {
    const ChildSchema = new mongoose.Schema({
      field: {
        type: String,
        select: false,
      },
      _id: false,
    }, { id: false });

    const ParentSchema = new mongoose.Schema({
      child: ChildSchema,
      child2: ChildSchema,
    });
    const Parent = mongoose.model('Parent', ParentSchema);
    const ogParent = new Parent();
    ogParent.child = { field: 'test' };
    ogParent.child2 = { field: 'test' };
    await ogParent.save();

    const foundParent = await Parent.findById(ogParent._id).exec();
    console.log(foundParent);

    db.close();
  } catch (e) {
    console.log(e);
  }
});


ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ свою Π²Π΅Ρ€ΡΠΈΡŽ node.js, mongoose ΠΈ MongoDB.
4.11.8

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

@wlingke , ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ² всС самыС Ρ‚ΠΎΠ½ΠΊΠΈΠ΅ ошибки Π² мангустС с 2014 Π³ΠΎΠ΄Π°: rocket:: 1st_place_medal:

image

ВсС 3 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

спасибо Π·Π° ΠΏΠΎΠ»Π½Ρ‹ΠΉ сцСнарий воспроизвСдСния, это ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° ΠΎΡˆΠΈΠ±ΠΊΡƒ

Π’Ρ€ΡƒΡ‡Π΅Π½ΠΈΠ΅ @wlingke Π²ΠΎΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ Π·Π½Π°Ρ‡ΠΊΠ° Π² Π½ΠΎΠΌΠΈΠ½Π°Ρ†ΠΈΠΈ "Π›ΡƒΡ‡ΡˆΠΈΠΉ

@wlingke , ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ² всС самыС Ρ‚ΠΎΠ½ΠΊΠΈΠ΅ ошибки Π² мангустС с 2014 Π³ΠΎΠ΄Π°: rocket:: 1st_place_medal:

image

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ