Maison  >  Questions et réponses  >  le corps du texte

mongodb返回刚插入数据的id用什么方法

在mysql中,可以使用last_insert_id()的方法获得最近插入数据的id,但是在mongodb,没找到这样的方法,如何实现呢?

补充代码
def add_post():
    post = db.Post()
    post.title = request.form['title']
    post.text = request.form['text']
    post.save()
    return <刚刚插入数据的 _id>

这样应该比较清楚了吧

PHP中文网PHP中文网2739 Il y a quelques jours717

répondre à tous(5)je répondrai

  • PHPz

    PHPz2017-04-21 11:17:56

    Il semble que LZ devrait utiliser PyMongo... Alors lisez simplement post._id directement

    Il se mettra à jour après l'insertion...

    def add_post():
        post = db.Post()
        post.title = request.form['title']
        post.text = request.form['text']
        post.save()
        return post._id

    Référence :

    [1] Collection - Référence PyMongo

    répondre
    0
  • 迷茫

    迷茫2017-04-21 11:17:56

    _id contient un horodatage, donc il augmente, il suffit de regarder le plus grand

    Peut-être que LZ signifie une insertion auto-contrôlée, donc fondamentalement, tous les pilotes renverront l'objet qui vient d'être inséré, qui contient _id

    répondre
    0
  • 黄舟

    黄舟2017-04-21 11:17:56

    _id est généralement généré par le pilote, donc théoriquement il est connu avant l'insertion.

    répondre
    0
  • 阿神

    阿神2017-04-21 11:17:56

    Si vous utilisez _id, utilisez l'ID objet par défaut, qui est enregistré par votre pilote et généré avant que les données ne soient envoyées à mongo. Il devrait être dans la valeur de retour de votre insert()

    répondre
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-21 11:17:56

    S'il s'agit de Java, après avoir enregistré ou inséré un objet dans MongoDB, comme mentionné ci-dessus, vous pouvez l'obtenir en supprimant directement l'ID d'attribut dans l'objet~

    répondre
    0
  • Annulerrépondre