相关疑难解决方法(0)

django post_save从发送模型中调用?

我有一个非常简单的模型:

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)
Run Code Online (Sandbox Code Playgroud)

我知道在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)
Run Code Online (Sandbox Code Playgroud)

我在哪里可以调用我的post_save调用,以便它知道徽章(我假设这是修复?

谢谢.

python django django-signals django-models

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

django ×1

django-models ×1

django-signals ×1

python ×1