ドキュメントを読んだ後、
私は自分の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()
私が読んだことから、メッセージを送信するために必要だと思ったのはこれだけでした。さて、それと新しいユーザーを作成します(私はdjango-registrationフレームワークを使用します)しかし、何も送信されていません(まあ、私が持っているレシーバーメソッドは何もしません)。また、@receiverアノテーションの「sender=User」パラメーターを削除しました。
@receiver(post_save)
しかし、それは問題を助けませんでした。コンソールに何も出力されず、新しいデータは保存されません...ユーザーが保存されたときにユーザーから信号を送信する必要がありますか?もしそうなら、私はそれをどのように行いますか?私はdjango-registrationを使用しているので、UserProfileを定義しています...つまり、どこで(どのファイル/メソッドで)シグナルを送信するようにユーザーに指示しますか?