出于某种原因,我处于使用 peewee 的状态,并且发生了这种情况:
我已经有了一个大应用程序,它可以在其他地方使用,我有一些像这样的模型:
class SomeModel(Model):
day = DateField();
related_entity_id = IntegerNotNullField();
info = CharField();
你可以看到一些自定义字段,但它们应该可以工作,我创建了这样的sql:
CREATE TABLE IF NOT EXISTS "somemodel" (
"id" INTEGER NOT NULL,
"day" DATETIME,
"related_entity_id" INTEGER NOT NULL,
"info" VARCHAR(255),
PRIMARY KEY("id")
);
当我尝试创建像这样的 SomeModel 实例时
some_model_instance = SomeModel(
<a date from from api put request>
1 # id from the same request
"some text info" # from the same request
);
我明白了
some_model_instance == None
有人知道为什么吗?
编辑:
那么为什么我的应用程序会处理这种行为,它会保存数据,但打印实例仍然返回
None
,我不知道为什么
您需要使用关键字参数。实例化模型时不能使用位置参数。这应该有效:
some_model_instance = SomeModel(
day=some_datetime,
related_entity_id=1,
info='some text')