가진 읽은 문서,django 사용자를 업데이트 할 때 post_save 신호를 보내려면 어떻게해야합니까?
난 내 signals.py 파일이 만든 : 내가 읽은 것을에서, 모든했다
from django.db.models.signals import post_save
from django.dispatch import receiver
from models import User
from models import Story
@receiver(post_save, sender=User)
def create_initial_story(sender,instance, signal, created, **kwargs):
print "helloooo!"
if created:
Story(user = instance, title = 'Random Stories', description="Random stories", is_closed = False, is_random = True).save()
은 내가 생각 메시지를 보내려면해야했다. 글쎄, 그건 새로운 사용자를 만든다. (장고 등록 프레임 워크를 사용한다.)하지만 아무 것도 보내지 않고있다.
@receiver(post_save)
을두고 있지만 그 문제를 도움이되지 않았다 - 나는 또한 @receiver 주석에 "보낸 = 사용자"매개 변수를 제거했습니다. 콘솔에 아무 것도 출력되지 않고 새로운 데이터가 저장되지 않습니다 ...
은 사용자가 저장 될 때 신호를 사용자에게 보내야합니까 ?? 그렇다면 어떻게해야할까요? 난 장고 등록을 사용하고, 그래서 내가 정의한 UserProfile을 가지고 ... 내가 무슨 뜻인지, (어떤 파일/방법에서) 사용자에게 신호를 보내라고 말할 것인가?
흠, 내가 파이썬에 조금 익숙하다. 그래서 import signals 행을 제외하고 models.py에서 * call * 할 필요가 있는가? 아니면 그냥 가져 와서 그대로 둘 수 있을까요? – bharal
@bharal 바로 가져 오기. 어떻게 든 그것을 실행해야합니다. 또한'signals.py'에서'django.db.models.get_model'을 사용하여 순환 가져 오기를 방지하십시오. – DrTyrsa