我写了一个信号,每当有一个模型的实例生成的时候就会去生成一个跟他有关的另一个模型,信号就是用的post_save
来判断的,但是问题来了,就是每当我去修改那个模型之后,它就会又一次生成一个新的模型,就是说它又激活了信号post_save
。所以我该怎么判断只有当这个模型的实例第一次生成的时候才激活这个信号呢?
1
jimmyye 2018-03-28 14:03:51 +08:00
https://docs.djangoproject.com/en/1.11/ref/signals/#post-save
created A boolean; True if a new record was created. |
2
Hopetree OP @jimmyye created 可以判断是否是新生成的实例啊,这个我还真的不清楚,我先去试试吧。我本来想试试把 post_save 换成 post_init 的,我理解的这个信号就是当实例第一次生成的时候会调用,以后修改什么的都不会再调用,因为它是__init__()里面调用的,不知道我的理解有没有错
|
3
jimmyye 2018-03-28 14:37:41 +08:00 1
那个是每次调用__init__()(实例化)后触发的,不是创建(保存到数据库)后。
|