小编dkm*_*tt0的帖子

与 python 和 peewee 相同的默认值

我打算用 PeeWee 进行测试,我发现了一个大问题。例子 :

from uuid import uuid4
import datetime as dt
import time
from peewee import *

dbfile = 'test.db'
db = SqliteDatabase(dbfile)

class BaseModel(Model):
    class Meta:
        database = db

class Example(BaseModel):
    uuid = CharField(default=str(uuid4()))
    date = DateTimeField(default=dt.datetime.now())

try:
    Example.create_table()
except:
    pass
e1 = Example.create()
time.sleep(1)
e2 = Example.create()
print(e1.uuid, e2.uuid) #Same uuid...
print(e1.date, e2.date) #Same date
Run Code Online (Sandbox Code Playgroud)

在这段代码中,uuid 和 date 是相同的,这是不正常的。为什么以及如何将其更改为每个新创作的不同价值?

谢谢

python python-3.x peewee

1
推荐指数
1
解决办法
1446
查看次数

标签 统计

peewee ×1

python ×1

python-3.x ×1