Django使用mongodb数据库关于自增长id的值设置

Posted Jason_WangYing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django使用mongodb数据库关于自增长id的值设置相关的知识,希望对你有一定的参考价值。

最近在使用mongodb数据库时我手动导入数据库后发现自增id没有变化,一直在找文档,结果发现mongodb 数据有个自访问的数据库,专门记录自增id和每个数据库表的字段和字段类型

{ 
    "_id" : ObjectId("60d208b25a0f3d1157441810"), 
    "name" : "django_migrations", 
    "auto" : {
        "field_names" : [
            "id"
        ], 
        "seq" : NumberInt(22)
    }, 
    "fields" : {
        "app" : {
            "type_code" : "string"
        }, 
        "applied" : {
            "type_code" : "date"
        }, 
        "id" : {
            "type_code" : "int"
        }, 
        "name" : {
            "type_code" : "string"
        }
    }
}

__schema__就是这个数据库表记录自增id的值

name:这个字段是表名称

auto:里面有两个字段,一是就是自动id的值

fields:表的字段与类型

如果想改自增id的数值,可以直接修改这个表的id值,但是我实际用时发现由于__它不能用用属性的方法(.)获取,需要用下面的方法

# Requires pymongo 3.6.0+
from pymongo import MongoClient

client = MongoClient("mongodb://host:port/")
database = client["testMongo"]
collection = database["__schema__"]

query = {}

cursor = collection.find(query)
try:
    for doc in cursor:
        print(doc)
finally:
    client.close()

 

 

 

 

以上是关于Django使用mongodb数据库关于自增长id的值设置的主要内容,如果未能解决你的问题,请参考以下文章

mongodb morphia怎么获取最大的id

分布式服务自增长唯一ID小结

django ORM模型常用字段字段常用参数

mongodb id 递增的吗

MongoDB 自动增长

GridFS(MongoDB)的自定义存储系统?