ImportError: cannot import name update_all_contenttypes

送分小仙女□ 提交于 2019-11-28 13:29:28

It's unclear why that function was removed in 1.8, but it appears that the modern replacement is to just re-invent that wheel:

from django.apps import apps
from django.contrib.contenttypes.management import update_contenttypes

def update_all_contenttypes(**kwargs):
    for app_config in apps.get_app_configs():
        update_contenttypes(app_config, **kwargs)

It seems django team has removed the update_contenttypes function without a mention in the release notes because isn't a documented, public API. (as the said here: https://code.djangoproject.com/ticket/28092)

Now you can use instead the new function create_contenttypes, as you can see here: https://github.com/django/django/commit/6a2af01452966d10155b720f4f5e7b09c7e3e419

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!