create_index函数中的的instance参数时如何传递的?

来源:8-19 知识拓展与课后作业

慕沐4168884

2020-04-16

def create_index(sender, instance, **kwargs):
    """
    sender : 发送者
    instance : 模型类对象
    """

    if "created" in kwargs:  # 模型类创建数据时执行created方法
        # 使用ContentType.objects.get_for_mode 查询当前class object 属于 那一应用(app_label)的 模型类(models)
        ct = ContentType.objects.get_for_model(instance)

        # 指定content_type 与object_id
        Index.objects.get_or_create(content_type=ct, object_id=instance.id,
                                    pub_date=instance.pub_date)

post_save.connect(create_index, sender=News)  # 固定写法 接收函数
写回答

1回答

Jack

2020-04-16

您好,instance是模型类实例(比如instance=User.object.get(pk=1)),这里就是定义一个函数参数,没别的。

0
0

Django高级实战 开发企业级问答网站

融合Django高级用法/算法/设计模式/TestCase测试/云计算打造项目

900 学习 · 756 问题

查看课程