sql >> データベース >  >> NoSQL >> MongoDB

マングースのcreatedAtプロパティを更新できませんか?

    一部のドキュメントはtimestampsのときに作成されたため オプションがfalseに設定されました(これはデフォルト値です)mongooseはそれらのタイムスタンプを認識しません。したがって、item._id.getTimestamp() 未定義を返します。

    できることは、createdAtのエントリを再作成することです。 存在しません。オプションが有効になっている場合、Mongooseはタイムスタンプを自動的に生成し、現在のタイムスタンプに設定します。

        const profilesWithoutCreated = await Profile.find({createdAt: {$exists: false}}).exec();
        const timeStampExtract = [];
        let newProfile;
        for (const profile of profiles) {
           newProfile = new Profile(profile);
           newProfile.createdAt = profile._id.getTimestamp();
           const savedProfile = await newProfile.save();
           timeStampExtract.push(savedProfile._id.getTimestamp());
        }
    



    1. MongoRepositoryfindByCreatedAtBetweenが正確な結果を返さない

    2. レスキューワーカーによってキューに入れられたジョブを破棄するにはどうすればよいですか?

    3. SpringBootredisTemplateの自動配線に失敗しました

    4. 再帰クエリ?