我正在寻找一种动态销毁(删除)动态模型的方法。我正在通过类型运算符创建一个模型。一切都很完美。当我删除一个模型时,我会执行以下一系列操作:
我通过调用获得模型:
model = apps.get_model(app_label, name)registry从管理站点注销模型从数据库中删除模型:(
schema_editor.delete_model(model)成功)删除模型:(
del model自己的模型工厂)清除应用程序缓存:
apps.clear_cache()清除
ContentType清除管理站点的缓存:
reload (import_module (settings.ROOT_URLCONF))clear_url_caches ()
但是,在所有这些动作之后,模型出人意料地留在了记忆中。例如,这可以在管理站点上的嵌套表单中看到。引用它当然会导致错误,因为此时对应的表不再存在。
如果我重新启动服务器,模型就会消失,因为模型工厂中没有条目。我不应该每次都重新启动服务器。
难道我做错了什么?