我怎样才能从项目中驱除鬼魂模型?

2024-04-26 11:00:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个叫做Media的模型;此后更名为“PetImage”,并进一步修订。现在ack在Python源文件、.pyc文件、模板或SQLite3数据库中都找不到字符串“Media”。从重新检查源代码(并重新启动Gunicorn)可以看出,字符串“Media”不应该出现在我的项目中的任何地方,例如,CKeditor根目录下的东西。我还进行了迁移并执行了迁移

但我仍然得到http://dpaste.com/0FX74SJ-Django是一个错误的报告失败加载“媒体”:

Exception Value: 'module' object has no attribute 'Media'

我该怎么做才能使Django不期望'module'对象(我想是my models.py)提供Media

似乎要获取投诉的函数是第四行,带有for循环,位于:

def one_pet(request, pet_id):
    pet = models.Pet.objects.get(id = pet_id)
    media = []
    for item in models.PetImage.objects.all():
        if item.url.startswith('https://youtu.be/'):
            media.append('')
        else:
            media.append('')
    return render(request, 'one_pet.html', {
        'pet': pet,
        'site_name': settings.SITE_NAME,
        })

如果模型被重命名,是否有额外的簿记工作要做?如果我希望我现在的PetImage被视为Media的继承者,并且所有进一步的活动都指向PetImage,我应该怎么做

谢谢你


Tags: django字符串模型idforobjectsmodelsrequest
1条回答
网友
1楼 · 发布于 2024-04-26 11:00:28

ack doesn't find the string "Media" in any of my Python source files, .pyc files

我不认为在.pyc文件中这样做会很好。你试过删除所有^{} files in the directory吗?如果经常出现这种情况,可以在版本控制设置中设置^{} environment variable或在合并后挂钩中执行递归删除

相关问题 更多 >