mongoengine遗传django

mongoengine遗传django,django,inheritance,mongoengine,Django,Inheritance,Mongoengine,我尝试过这个例子: 但不是为我工作 我想存储天气api中的数据: 我有这样的模特 import mongoengine class Weather(mongoengine.Document): created = mongoengine.DateTimeField latitude = mongoengine.DecimalField longitude = mongoengine.DecimalField model_name = mongoengine.S

我尝试过这个例子: 但不是为我工作

我想存储天气api中的数据:

我有这样的模特

import mongoengine

class Weather(mongoengine.Document):
    created = mongoengine.DateTimeField
    latitude = mongoengine.DecimalField
    longitude = mongoengine.DecimalField
    model_name = mongoengine.StringField

class Precipitation(Weather):
    dateFrom = mongoengine.DateTimeField(required=True)
    dateTo = mongoengine.DateTimeField(required=True)
    precipitation = mongoengine.DecimalField
    symbol = mongoengine.IntField(min_value=1, max_value=23)

class State(Weather):
    temperature = mongoengine.DecimalField
    windDirection = mongoengine.StringField
    windAngle = mongoengine.DecimalField
正在尝试保存数据,例如: models.State.objects.create(温度=17)

什么也救不了


我知道我在字段定义中缺少构造函数的参数,但我真的不知道如何实现它。

您需要类实例,例如:

import mongoengine

class Weather(mongoengine.Document):
    created = mongoengine.DateTimeField()
    latitude = mongoengine.DecimalField()
    longitude = mongoengine.DecimalField()
    model_name = mongoengine.StringField()

class Precipitation(Weather):
    dateFrom = mongoengine.DateTimeField(required=True)
    dateTo = mongoengine.DateTimeField(required=True)
    precipitation = mongoengine.DecimalField
    symbol = mongoengine.IntField(min_value=1, max_value=23)

class State(Weather):
    temperature = mongoengine.DecimalField()
    windDirection = mongoengine.StringField()
    windAngle = mongoengine.DecimalField()

哦,我的上帝!我看了2天的代码,没有得到这些小差异xD