属性错误。_auto_id_field Django与MongoDB和MongoEngine一起使用。

问题描述 投票:0回答:1

我使用Mongoengine和DjangoBelow是我的Model类。

class MyLocation(EmbeddedDocument): my_id = IntField(required=True) lat = GeoPointField(required=False) updated_date_time = DateTimeField(default=datetime.datetime.utcnow)

我的视图.py

def store_my_location(): loc = MyLocation(1, [30.8993487, -74.0145665]) loc.save()

当我调用上面的方法时,我得到了错误的信息。AttributeError.属性错误,_auto_id_field _auto_id_field

请提出解决方案

django mongodb mongoengine
1个回答
3
投票

我建议在保存位置时使用这些名字。由于类定义不包括你如何放入这些键,这就是为什么我们需要使用名称来定义它们。

def store_my_location():
    loc = MyLocation(my_id=1, lat=[30.8993487, -74.0145665])
    loc.save()

这应该是可行的。

还有一个方法是把所有的东西都写在里面。MyLocation 类。

class MyLocation(EmbeddedDocument):
    my_id = IntField(required=True)
    lat = GeoPointField(required=False)
    updated_date_time = DateTimeField(default=datetime.datetime.utcnow)

    def create(my_id,lat):
      location=MyLocation(my_id=my_id,lat=lat)
      location.save()
      return location

def store_my_location():
    loc = MyLocation.create(1,[30.8993487, -74.0145665])


© www.soinside.com 2019 - 2024. All rights reserved.