Mongo db par défaut timestamp
Comment créer un champ de date avec la valeur par défaut,la valeur par défaut doit être à jour des horodateurs, chaque fois que l'insertion s'est passé dans la collection.
Êtes-vous à l'aide de n'importe quel pilote? langage de programmation?
Nous sont données .Net services ..mais c'est n'avez pas d'accès . Est-il possible de créer le champ avec de Mongo le programme d'installation lui-même.
Comment êtes-vous d'insérer le document? êtes-vous à l'aide de la
Nous sont données .Net services ..mais c'est n'avez pas d'accès . Est-il possible de créer le champ avec de Mongo le programme d'installation lui-même.
Comment êtes-vous d'insérer le document? êtes-vous à l'aide de la
mongodb-csharp
pilote ou de l'environnement?OriginalL'auteur Jagadeesan G | 2016-04-11
Vous devez vous connecter pour publier un commentaire.
C'est assez simple!
Lorsque vous utilisez la Mangouste par exemple, vous pouvez passer des fonctions en tant que valeur par défaut.
Mangouste, puis appelle la fonction pour chaque insertion.
Dans votre Schéma, vous feriez quelque chose comme:
N'oubliez pas de passer uniquement la fonction de l'objet lui-même
Date.now
et pas de la valeur de l'appel de la fonctionDate.now()
que ce sera seulement mis la Date une fois de la valeur de votre Schéma a été créé.Cette solution s'applique à des Mangoustes & Node.Js et j'espère que c'est votre cas d'utilisation, car vous n'avez pas spécifier plus précisément.
OriginalL'auteur JoschuaSchneider
Vous suffit de le faire lors de l'insertion... pour le courant
timestamp
.vous devez mangouste si vous allez avec un schéma... mongodb est en tant que tel schemaless. mongoosejs.com/docs/2.7.x/docs/schematypes.html
OriginalL'auteur Thalaivar
Dans ce but, vous n'avez pas vraiment besoin de créer explicitement un champ pour l'enregistrement des horodateurs. L'id de l'objet c'est à dire
"_id"
, que mongo crée par défaut peut être utilisé pour servir le but, donc, de gagner un supplément de l'espace redondant. Je suis en supposant que vous utilisez node.js si vous pouvez faire quelque chose comme ce qui suit pour obtenir le temps de particulier de la création du document:Et, si vous utilisez quelque chose comme la mangouste, de faire comme ceci:
Lire plus sur "_id" ici.
OriginalL'auteur UtkarshPramodGupta
Je tiens simplement à souligner que, dans le cas où vous voulez le timestamp à être stockées sous la forme d'un entier au lieu d'un format de date, vous pouvez le faire:
OriginalL'auteur Chong Lip Phang
Voici une commande qui n'a pas de définir une valeur par défaut, mais il insère un objet avec le timestamp actuel:
Ceux-ci ont le même effet:
Être conscient que
Date()
sansnew
serait différent - il ne retourne pas uneISODate
objet, mais une chaîne de caractères.Aussi, ces utiliser le temps du client, pas l'heure du serveur, qui peut être différente (depuis le réglage de l'heure n'est jamais 100% de précision).
OriginalL'auteur jcsahnwaldt
Merci les amis ..
J'ai trouvé une autre façon d'obtenir le timestamp de champ _id. objectid.méthode gettimestamp() à partir de cela, nous pouvons l'obtenir à l'heure.
OriginalL'auteur Jagadeesan G
C'est un peu vieux, mais je mouillage lors de l'utilisation de la Date.maintenant() la méthode, il n'est pas obtenir la date et l'heure actuelle, il reste bloqué sur le temps que vous avez commencé votre nœud de processus en cours d'exécution. Par conséquent, tous les horodatages sera par défaut la Date du jour.maintenant() de quand vous avez commencé votre serveur.
Une façon, j'ai travaillé autour de cette était de faire ce qui suit:
OriginalL'auteur J.Wolfe
Lors de la Création du Document, l'horodatage est l'une des quelques options configurables qui peuvent être transmis au constructeur ou directement.
Après cela, la mangouste attribue createdAt et updatedAt les champs à votre schéma, le type est attribuée en Date.
OriginalL'auteur sultan aslam