在mongodb中自动增加一个字段

时间:2018-03-26 15:03:34

标签: javascript python mongodb

每当我将一个新项插入到集合中的嵌套数组时,我需要找到一种方法将“Bill_id”字段自动递增1: https://docs.mongodb.com/v3.0/tutorial/create-an-auto-incrementing-field/ 我还在官方文档中找到了这个演示: {{3}}

    Columns("O:O").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Columns("N:N").Select
Selection.TextToColumns Destination:=Range("N1"), DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
    Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
    :="-", FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True
Columns("N:N").Select
Selection.Copy
Sheets("Remove Duplicates").Select
Columns("B:B").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Range("$B$1:$B$104").RemoveDuplicates Columns:=1, Header:=xlNo
Dim lastRow As Long
lastRow = Range("B" & Rows.Count).End(xlUp).Row

Dim rowCnt As Long
For rowCnt = lastRow To 4 Step -1

Range("B" & rowCnt).Resize(6, 1).Insert Shift:=xlDown, 
CopyOrigin:=xlFormatFromLeftOrAbove

Next

Sheets("Data").Select
Rows("5:5").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("All Entries").Select

Dim lrow As Long

lrow = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row + 1
Range("A" & lrow).Select
ActiveSheet.Paste

但我不知道如何使用该解决方案,因为它提出了一个完成所有工作的JavaScript函数 但是我正在使用python脚本,并且使用flask

具体来说是一个REST API

1 个答案:

答案 0 :(得分:2)

在python中编写文档中提到的类似函数。这就是我使用的。

def getLastUserId(self):
  if len(list(self.find())) is not 0:
    last_user = list(self.find({}).sort("user_id", -1).limit(1))
    return last_user[0]["user_id"]
  else:
    return 0

这将返回上次添加文档的“user_id”。只需将其递增1,然后为新文档执行简单的插入。