私は動作する非常に単純なモデルを持っています:
class Badge(models.Model):
name = models.CharField(max_length=16, help_text="Name for Badge")
category = models.ForeignKey(BadgeCategory, help_text="Category for badge")
description = models.CharField(max_length=32, help_text="A brief description")
file = models.ImageField(upload_to=format_badge_name)
signals.post_save.connect(create_badge, sender=Badge)
私はsignals.pyのcreate_badge関数が機能することを知っています。送信者の値なしで送信すると、送信者はLogEntryオブジェクトであると表示されます。以下のように、post_saveスクリプトでインスタンス情報の一部を参照する必要があります。
def create_badge(sender, instance, created, **kwargs):
from userinfuser.ui_api import UserInfuser
from django.conf import settings
if created:
api_key = settings.API_KEY
api_email = settings.API_EMAIL
ui = UserInfuser(api_email, api_key)
ui.create_badge(instance.category.name, instance.name, instance.description, instance.file.url)
post_save呼び出しをどこで呼び出すことができるので、バッジを認識できます(これが修正であると想定していますか?
ありがとう。