Django 动态重新加载模块

如果只是固定加载某一个模块可以使用 importlib.reload()函数

import importlib
from your_file_path import module

importlib.reload(module)

如果这个模块是不固定的就需要使用下面的方法

可以将对应的文件路径的具体的module传入

例如

我希望重新加载的模块的路径是:app01/myfile.py

那 file_path  对应就是【'app01/myfile.py'】

那 module 对应就是【'myfile'】

这样带入下面的代码就可以实现django动态重新加载某一模块

import importlib.util

module_name = 'your_module_name'
file_path = 'your_file_path'

spec = importlib.util.spec_from_file_location(module_name, file_path)
module = importlib.util.module_from_spec(spec)
spec.loader.exec_module(module)

猜你喜欢

转载自blog.csdn.net/gongzairen/article/details/131680223