2010-03-08 73 views
2

docs说:关于post_save信号和创建参数

post_save 
django.db.models.signals.post_save 

created 
A boolean; True if a -new- record was create. 

,我有这样的:

from django.db.models.signals import post_save 
def handle_new_user(sender, instance, created, **kwargs): 
    print "--------> save() "+str(created) 
post_save.connect(handle_new_user, sender=User) 

,当我在外壳做:

u = User(username="cat") 
u.save() 
>>> --------> save() True 
u.username = "dog" 
u.save() 
>>> --------> save() True 

我期待有一个>>> --------> save() False当我第二次保存()因为是更新?不?

+0

您使用的是什么版本的Django?当我在1.1上使用完全相同的代码时,它工作得很好。 – Adam 2010-03-08 04:43:25

+0

即时通讯使用1.1:S – panchicore 2010-03-08 15:06:16

回答

0

看起来像你已经实现了你自己的用户没有一个唯一的用户名限制吗?

+0

Im实现“从django.contrib.auth.models导入用户” – panchicore 2010-03-08 16:27:01

0

我建议你用User.objects.create_user来避免批量操作。